Autres [xl 2007] VBA List box d'un repertoire d'un lecteur et copie de celui ci vers un autre lecteur

kif

XLDnaute Occasionnel
Bonjour la Team,

J'ai besoin s.v.p de votre aide, voici le contexte :

J'ai un vieux PC préhistorique avec un XL 2007 (d'ou le préfixe dans le titre ;)) je souhaiterais s.v.p si possible faire par l'intermedaire de Excel des recherches de répertoire sur un lecteur (Ex F:/) et si existant la copie de celui ci vers un autre lecteur (ex : Z:/)

idéalement :

j'ai un listbox qui apparaitrait ou je peux lister via un ascenseur le contenu du lecteur 1 ou via un Textbox taper le nom ou N° du répertoire recherché
Si il existe je peux le sélectionner et declencher sa copie vers une destination d'un autre lecteur 2 via un bouton par ex
sinon ba il existe pas

Merci d'avance de votre aide

Franck
 

Pounet95

XLDnaute Occasionnel
Bonjour, à tous
Je ne sais pas si c'est possible sur le "PC Préhistorique", utiliser 2 fenêtres du gestionnaire de fichiers.
Dans la barre des tâches, clic droit sur l'icone du gestionnaire, puis choisir dans la liste le répertoire où commencer.
Refaire l'opération pour obtenir une 2ème fenêtre.

Ca évite un développement VBA !
A essayer

Claude alias Pounet95
 

patricktoulon

XLDnaute Barbatruc
re
ok
à ameliorer la bonne blague il n'y a rien aucun code dans ce fichier LOL

BON !!
une ébauche toute simple
utilisation de la fonction dir
utilisation de name as
c'est assez simple

tu coche dans la liste de gauche et tu clique sur le bouton transfert
pour remplir les liste c'est leur bouton respectif en dessous chacune d'entre elles
 

Pièces jointes

  • Usr LDI Version patricktoulon .xls
    38.5 KB · Affichages: 2
Dernière édition:

kif

XLDnaute Occasionnel
Bonsoir Patrick
rapidité efficacité

Merci beaucoup c'est super sympa de ta part ;)

Est ce que je peux te demander 3 fonctions de plus s.v;p et une correction

Correction :Faire une copie du repertoire ou du fichier coché car la ca fait un deplacement

1 Avoir une recherche et un raz pour pouvoir lister la listbox a gauche

2 Sur la liste de gauche OK ca fonctionne j'arrive à transférer quand cocher (bien vu les cases c'est parfait!) un répertoire complet, cependant il faudrait aussi que je puisse lister ce répertoire pour allez cocher un ou plusieurs fichiers présent dedans à transférer

3 Sur la liste de droite il faudrait un bouton "supprimer" pour pouvoir supprimer un répertoire transféré ou un ou des fichiers de ce mème répertoire comme la fonction du listbox de gauche (les cases a cocher)

Merci d'avance de ton aide

Franck
 
Dernière édition:

patricktoulon

XLDnaute Barbatruc
re
allez change l'event transfert
VB:
'bouton transfert
Private Sub CommandButton2_Click()
    Dim L1 As Object, L2 As Object, i&, n1$, n2$, oFso
    Set L1 = ListBox1
    Set L2 = ListBox2
    For i = L1.ListCount - 1 To 0 Step -1
        If L1.Selected(i) Then
            L2.AddItem L1.List(i, 0), 0: L2.List(0, 1) = L1.List(i, 1)
            n1 = Label1.Caption & L1.List(i, 1)
            n2 = Label2.Caption & L1.List(i, 1)

            If GetAttr(n1) = 16 Then
                Set oFso = CreateObject("Scripting.FileSystemObject")
                oFso.CopyFolder n1, n2, True
            Else
                FileCopy n1, n2
                'L1.RemoveItem (i)
            End If
        End If
    Next
End Sub
 

patricktoulon

XLDnaute Barbatruc
allez tiens tu l'a toa recherche dans la liste avec le textebox
quand il est vide tu a la liste entière
quand il ne l'est pas tu a la listre triée avec les nom qui contiennent la valeur du textbox dans la listbox1
 

Pièces jointes

  • Usr LDI Version 2.0 patricktoulon .xls
    38.5 KB · Affichages: 1

kif

XLDnaute Occasionnel
Trop fort Patrick

exactement ça :cool: , c'est presque bon

1- je ne peux pas lister un répertoire (repere D) sur les listbox quand je clique dessus pour aller dedans

2- Juste avoir un bouton "RAZ" ou un refresh car quand tu fais une recherche sur une valeur non trouvée il reste à la racine en affichage méme si j'efface la valeur de recherche ou si je mets * et ne réactualise pas le treeview du listbox

3- sur le liste box de droite (destination) si je pouvais avoir un bouton "supprimer" les répertoires ou les fichiers serait parfait (avec le listage des répertoire comme le point 1)

Merci d'avance de ton support

Franck
 

patricktoulon

XLDnaute Barbatruc
bonjour
tu a un bouton supprimer pour chaque liste maintenant et tes deux listes ont les checkboxs
et au fat les repere "D" et "F" c'est juste des repères visuels pour indiquer si c'est des fichiers ou des sous dossiers
 

Pièces jointes

  • Usr LDI Version 2.3 patricktoulon .xls
    41 KB · Affichages: 5
Dernière édition:

kif

XLDnaute Occasionnel
Bonjour Patrick

Whaoo nickel

Manque juste la possibilité de lister dans le répertoire ( en fait ce sont des répertoires que je veux copier soit en totalité, soit quelques fichiers dans un de ces répertoires) actuellement je liste bien ces répertoires, je peux les copier, mais je ne peux pas rentre dedans pour sélectionner des fichiers....

il y a toujours un prob de refresh aléatoire quand tu fais une recherche parfois il ne reaffiche pas l'ensemble des fichiers ? peux étre rajouter un bouton clear ou refresh

Merci d'avance

franck
 

patricktoulon

XLDnaute Barbatruc
bon on va pas y passer 3 jours hein!!!
tu veux quoi avec les bouton de choix répertoire
parce que tes demandes sont ambiguës
  1. lister une source complément dossier et fichier enfant direct (ce qui est déjà le cas)
  2. lister uniquement les dossier enfant direct de la source
  3. lister dossier et sous dossier de la source
  4. lister dossier et sous dossier et fichiers (arborescence complète )
  5. modif liste en fonction du dossier choisi dans la liste(même principe que l'explorer)
faudrait arrêter de développer au fur et a mesure que les idée viennent
j'ai pas que ça a faire

pose ta souris,réfléchi a ton projet dans son ensemble détaille le par point intelligiblement et présente un cahier des charges digne de ce nom
là si je te laisse faire on aura jamais fini ;)
 

kif

XLDnaute Occasionnel
Re patrick

Ba c'est ma demande du début, je dev pas au fur et à mesure ?

Les boutons chois repertoire c'est OK
cest aprés une fois charger que je puisse naviguer dans les repertoires
donc Lister dossier et sous dossier et fichiers arbo complet mais ceci avec ta souris une fois que tu as charger la listbox que je puisse rentrer dans un repertoire pour selectiooner des fichiers (comme si tu etait sur un explorateur window)

et rajouter s.VP un bouton "clear" ou "refresh" a coté du champ recherche pour actualiser la listview

voila

Je te remercie d'avance

Franck
 
Dernière édition:

patricktoulon

XLDnaute Barbatruc
bon ben comme quoi tu n'a pas compris comment fonctionne l'explorer
l'explorer te donne la liste des dossier et fichier enfant direct et non l'arborescence complete
ce n'est que l'ors de la sélection d'un item qui re liste les enfant directs(dossier et fichiers)de cet item dans la même fenêtre
et ainsi de suite
j'explore le disque L:\
j'ai 2 dossiers
dossier1 et dossier2
je clique sur dossier2 la liste se clear et me liste le contenu enfant direct de dossier2 (ses sous dossiers et ses fichiers ENFANTS DIRECT !!!)mais je n'ai plus dossier1 sur la liste

voila comment fonctionne explorer ;)
on pourrais lister tout dans la même liste mais ça serait t'induire en erreur
car tu pourrait très bien essayer de copier un dossier et son propre dossier parent ce qui impliquerait des doublons
par exemple tu pourrais tres bien copier le fichiers"toto.txt" du dossier "tata" et copier aussi le dossier "titi" dans le quel se trouve le dossier "tata" ou se trouve justement le fichier"toto.txt"

0+0=la tète a toto LOL ;):p

Si tu veux une listbox dynamique comme explorer je t'en fait une tu adaptera
mais rend le textbox de recherche tel qu'il est obsolète bien entendu
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 069
Messages
2 085 040
Membres
102 764
dernier inscrit
nestu