VB 6 AIDE A UN DEBUTANT

cs_HERVE1967 Messages postés 2 Date d'inscription vendredi 10 septembre 2004 Statut Membre Dernière intervention 10 septembre 2004 - 10 sept. 2004 à 16:39
cs_rene38 Messages postés 1858 Date d'inscription samedi 29 juin 2002 Statut Membre Dernière intervention 17 octobre 2013 - 10 sept. 2004 à 18:25
Je découvre, tout au moins j'essai d'approcher, VB 6. Je tente de m'initier via de petite routine telle que celle figurant ci dessous. Malheureusement, le résultat est décevant puisque l'exécution n'est pas probante.
Je souhaite par l'action clic sur un bouton ENREGISTRER, créer dans un fichier excell des informations diverses. Le fichier est bien créer. Cependant, blocage dans l exécution ; message = UN OBJET EST REQUIS à la première ligne Put #. Peut être vais je effrayer quelques un lorsqu'ils découvriront ces petites lignes. Merci à celles ou ceux qui s'attarderont sur mon cas.

Type FICHE
Dim LISTE As String
Dim TITRE As String
Dim ECHEANCE As Date
Dim RAPPELER As Boolean
Dim NOTE As String
End Type

Dim EVENEMENT As FICHE

Private Sub ENREGISTRER_Click()

Dim StrSize As Integer
Dim start_pos As Long

Open "c:\note.xls" For Binary As #1
Put #1, start_pos, EVENEMENT.LISTE
Put #1, , EVENEMENT.TITRE
Put #1, , EVENEMENT.ECHEANCE
Put #1, , EVENEMENT.RAPPELER
StrSize = Len(EVENEMENT.NOTE)
Put #1, , StrSize
Put #1, , EVENEMENT.NOTE
Close "c:\note.xls"
End Sub

3 réponses

Fulgy Messages postés 85 Date d'inscription mercredi 21 juillet 2004 Statut Membre Dernière intervention 5 octobre 2004
10 sept. 2004 à 17:03
Salut.
Y a un truc que je trouve bizzare dans ton code, c'est que tu n'ai pas d'erreur de compilation avant! Au niveau de la déclaration de ton type FICHE, tu ne dois pas mettre les mots clés Dim à l'intérieur. Si ton type est déclaré dans une form, il faut que tu le mette en Private, sinon VB va pas être content. Sinon pour l'erreur que tu as je vois pas trop d'où ça vient met y a un truc qui me laisse perplexe, c'est ta méthode pour mettre des informations dans un fichier excel. Je me suis pas encore penché sur la question VB6 - Excel, mais vu que ses fichier son d'un format particulier, il doit y avoir un méthode particulière pour y lire/écrire des informations. Je pense que ta méthode est plus adapté à l'accès à des fichiers texte.
A+
0
974Mr_007 Messages postés 126 Date d'inscription samedi 31 janvier 2004 Statut Membre Dernière intervention 17 janvier 2005
10 sept. 2004 à 17:18
t'es sur que tu as vb6?
pcq je pense que ta vba

Ey@Z 8-)
0
cs_rene38 Messages postés 1858 Date d'inscription samedi 29 juin 2002 Statut Membre Dernière intervention 17 octobre 2013 11
10 sept. 2004 à 18:25
Bonjour
Pour répondre à la question précise :

Dim start_pos As Long
=> start_pos = 0

Put #1, start_pos, EVENEMENT.LISTE


La première position dans le fichier a pour offset 1 et non 0.
Avant le Put ... , il faut indiquer

start_pos = 1
ou bien

start_pos = start_pos + 1
0
Rejoignez-nous