Creer fichier text probleme

Signaler
Messages postés
103
Date d'inscription
mardi 2 juillet 2002
Statut
Membre
Dernière intervention
21 juillet 2008
-
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
-
Bonjours à tous,

Voila j'ai un tt petit problème que je ne comprend pas. Lorsque j'utilise:

Private Sub Command1_Click()
Open "C:\Mon.txt" For Output As #fichier
Print #fichier, "blabla"
Close #fichier
End Sub

Cela fonctionne, mais quand jutilise:

Private Declare Function GetDriveType Lib "kernel32" Alias "GetDriveTypeA" (ByVal nDrive As String) As Long
Dim DriveLetter As String

Private Sub Command1_Click()
Open DriveLetter & "Mon.txt" For Output As #fichier
Print #fichier, "blabla"
Close #fichier
End Sub


Cela ne fonctionne pas j'ai un message d'erreur:
Erreur d'exécution '52'
nom ou num&ro incorrect

Pourtant DriverLetter fonctionne très bien et si je fait msgbox DriveLetter il me dit: C:\
Donc si quelqu’un passé par ici et pouvais m’éclairer je lui en serai très reconnaissant.




D'avance merci.

12 réponses

Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
Avant tes Open :

Fichier = freeFile

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
Ah et GetDriveType te reourne un type Long..

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
Messages postés
103
Date d'inscription
mardi 2 juillet 2002
Statut
Membre
Dernière intervention
21 juillet 2008

fichier = FreeFile
 je l'ai pas mit ds l'exemple mais je l'avais mit
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
que veux-tu avec ton GetDriveType ?

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
Messages postés
103
Date d'inscription
mardi 2 juillet 2002
Statut
Membre
Dernière intervention
21 juillet 2008

Le vrai pouvoir ne se donne pas, il se prends !
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
"C'est pas faux !" comme dirait Perceval

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
Messages postés
103
Date d'inscription
mardi 2 juillet 2002
Statut
Membre
Dernière intervention
21 juillet 2008

tin le forum deconne jarrive pas a poster
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
Vide le cache de ton navigateur (menu Outils)

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
Messages postés
103
Date d'inscription
mardi 2 juillet 2002
Statut
Membre
Dernière intervention
21 juillet 2008

ha voila je te disai dsl pour le flop.

je te pots ma source elle est tres petite:

Private Sub Form_Load()
For Y = 1 To 26
If GetDriveType(Chr(64 + Y) & ":") = 3 Then
DriveLetter = (Chr(64 + Y) & ":")
GoTo dl:
End If
Next Y
dl:
End Sub

Je veux recuperer le lecteur par defautl
Messages postés
103
Date d'inscription
mardi 2 juillet 2002
Statut
Membre
Dernière intervention
21 juillet 2008

en faite je crois que tu avais raison j'avais simplement oublier le:
fichier = FreeFile
merci pour ton aide
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
GetDriveType ne sert qu'à récupérer le type de ton lecteur (cd rom, disque fixe, amovible, etc.)

C'est pas GetCurrentDirectory que tu cherches, par hasard ?

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
41
salut,

et bien sûr être certain de l'existance du fichier ^^

ps (sans rapport) :
Q : [doc/faq.aspx#cs_postempty Parfois lorsque je réponds sur
le forum, ma réponse envoyée est vide, comment faire]

++
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp