Drive list dir list et file list!

Résolu
Signaler
Messages postés
56
Date d'inscription
samedi 21 août 2004
Statut
Membre
Dernière intervention
27 février 2005
-
Messages postés
56
Date d'inscription
samedi 21 août 2004
Statut
Membre
Dernière intervention
27 février 2005
-
voila je voulais savoir quel etait le code a mettre pour que une fois que l'utilisateur a selectionné le fichier dans file list que ca copie le chemin d'acces a ce fichier dans un code plus loin qui permet douvrir ce fichier et de rajouter une ligne dedans, voici mon code les .......... corresponde au chemin dacces du fichier!

Private Sub Check1_Click()
If Check1.Value = 1 Then
Open "............" For Append As #1
Print #1, "montexte"
Close #1
End Sub

Private Sub Dir1_Change()
File1.Path = Dir1.Path
End Sub

Private Sub Drive1_Change()
Dir1.Path = Drive1.Drive
End Sub

Merci de m'aider et dite le moi si il fau tplus d'info je précise je suis un noob je débute ! a+

8 réponses

Messages postés
721
Date d'inscription
dimanche 10 juin 2001
Statut
Membre
Dernière intervention
27 mars 2011
7
Faut une variable public que tu déclare dans un module:
public nomFichier as string
aprés dans l'évènement click de ton filelistbox:
nomFichier = File1.Path & "" & File1.FileName
Après tu as plus qu'à utiliser la variable nomFichier pour exploiter ton fichier
3
Messages postés
721
Date d'inscription
dimanche 10 juin 2001
Statut
Membre
Dernière intervention
27 mars 2011
7
En début du code feuille(après le option explicit si il y en a un):
dim txt1 as string

et après par ex pour s'ne servir:
open txt1 for append as #1
3
Messages postés
3757
Date d'inscription
mardi 23 septembre 2003
Statut
Membre
Dernière intervention
13 mars 2006
18
Suite à ta demande sur ton autre topic, voilà ma solution :

Une form (nommée par ex : "ChoixFichier" contenant 1 drivelistbox (drive1), 1 dirlistbox (dir1), 1 filelistbox (file1), 2 commandbutton (command1 pour le "OK", command2 pour le "Annuler").

Dans ton module principal, tu places : public NomFichier as string

Quand tu veux donner le choix à l'utilisateur, tu codes :

ChoixFichier.show 1
if NomFichier <>"" then
'tu exécutes ta procédure d'ajout ou de suppression
'en remplaçant ton Open "............" For Append As #1 par Open NomFichier For Append As #1
else
'tu ne l'exécutes pas car il n'y a pas de fichier sélectionné
end if

Voilà le code à coller dans la form "ChoixFichier" :

Dim Idx As Integer

Private Sub Command1_Click()
  If File1.FileName <> "" Then
'si un fichier est sélectionné, test s'il est à la racine ou dans un dossier
    If Right$(Dir1.Path, 1) = "" Then
      NomFichier = Dir1.Path + File1.FileName
    Else
      NomFichier = Dir1.Path + "" + File1.FileName
    End If
    Unload Me
  Else
    MsgBox "Vous n'avez pas sélectionné de fichier !", vbExclamation, "ERREUR"
  End If
End Sub

Private Sub Command2_Click()
'on ferme
  Unload Me
End Sub

Private Sub Dir1_Change()
'on change le path pour lister les fichier du nouveau path
  File1.Path = Dir1.Path
End Sub

Private Sub Drive1_Change()
  On Error GoTo drv_absent
  Dir1.Path = Drive1.List(Drive1.ListIndex)
"si pas d'erreur, on mémorise le nouveau drive
  Idx = Drive1.ListIndex
  Exit Sub
drv_absent:
'si le drive est pas prêt (pas de disquette, pas de connexion réseau, etc .....) on rétablit le drive mémorisé
Drive1.ListIndex = Idx
End Sub

Private Sub File1_DblClick()
'juste pour permettre de dire 'OK' aussi en double-cliquant
  Command1_Click
End Sub

Private Sub Form_Load()
'on met le nom du fichier à vide
  NomFichier = ""
'on veut que les fichiers *.cfg
  File1.FileName = "*.cfg"
'on dit qu'au départ c sur le c: qu'on cherche
  Drive1.Drive = "C:"
'on memorise le drive sélectionné
  Idx = Drive1.ListIndex
End Sub


G mis un max de commentaires, peut-être inutiles mais bon.
Essaie le. Si ça te convient pas, dis-moi, sinon clique sur réponse acceptée (c pas pour moi c pour ceux qui cherchent comme toi).

Cordialement, CanisLupus

Tous les glands ne deviennent pas des chênes mais tous les chênes ont été des glands
3
Messages postés
556
Date d'inscription
lundi 6 octobre 2003
Statut
Membre
Dernière intervention
31 octobre 2019
1
Bonjour,

Donne ta source a [mailto:momodestains@yahoo.fr ce mail.]

Merci :approve) et @ Plus ;)

BIL@Loch
:)
0
Messages postés
556
Date d'inscription
lundi 6 octobre 2003
Statut
Membre
Dernière intervention
31 octobre 2019
1
Je te la corrigerais.

BIL@Loch
:)
0
Messages postés
4525
Date d'inscription
dimanche 29 septembre 2002
Statut
Modérateur
Dernière intervention
22 avril 2019
9
bilaloch> Wow tu diffuse ton mail sur le forum, t'as pas peur des spam dit donc ? je te met en garde tout de même c'est une pratique a risque cela dit tu fait ce que tu veux ;) .

@+

E.B.
0
Messages postés
56
Date d'inscription
samedi 21 août 2004
Statut
Membre
Dernière intervention
27 février 2005

ok tilois mais la vairable "public txt1 as string" je la place ou?

Jte donne mon code mais faut me dire ou je place la variable :

Private Sub Check1_Click()
If Check1.Value = 1 Then
Open "............" For Append As #1
Print #1, "slt"
Close #1
End If
End Sub

Private Sub Dir1_Change()
File1.Path = Dir1.Path
End Sub

Private Sub Drive1_Change()
Dir1.Path = Drive1.Drive
End Sub

Private Sub File1_Click()
txt1 = File1.Path & "" & File1.FileName
End Sub

Est ce qu'il faut placer la variable apres open?
Merci de ton aide a+!cl!c
0
Messages postés
56
Date d'inscription
samedi 21 août 2004
Statut
Membre
Dernière intervention
27 février 2005

merci tilois ca marche et merci canislupus (j'ai rien compris mais la c le soir c normal ) je regarderai ca demain et jtesterai merci en tout cas a vous deux de votre aide !!! a+ !cl!c
0