Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1195 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Mettre la main à la Path

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Mettre la main à la Path

n°1272763
PGreg
Posté le 23-12-2005 à 22:21:15  profilanswer
 

Bonjour,  :hello:  
 
Je voudrais utiliser la commande Path, pour trouver l' emplacement de fichiers. Voilà ce que j' ai fait :  
 
Workbook("XXX" ).Path
 
Est -ce que l' on pourrait me dire ce qui ne vas pas, ou me donner la commande approprié.
 
Merci  :)

mood
Publicité
Posté le 23-12-2005 à 22:21:15  profilanswer
 

n°1272811
Epena
Posté le 24-12-2005 à 08:09:42  profilanswer
 

Bonjour,
C'est une erreur de syntaxe :
Chemin =Workbooks("XXX" ).Path
 
@+

n°1273463
PGreg
Posté le 26-12-2005 à 21:39:45  profilanswer
 

Bonjour,  
 
Merci d' avoir répondu, mais le problème reste entier, sur la phrase ci -dessous :  
 
MsgBox Workbooks("XXX" ).Path
 
Le débogueur me signale que "L' indice n' appartient pas à la séléction".
 
Qu 'est ce qui ne vas pas ?
 
Merci

n°1273488
Epena
Posté le 26-12-2005 à 22:57:05  profilanswer
 

Boujour
Je ne comprend pas car Workbooks("perso.xls" ).Path donne le chemin du classeur perso.xls. "XXX" existe-t-il ?
Est-ce le chemin par défaut des classeurs qui est recherché :
Chemin =Application.DefaultFilePath
J'espère avoir fait avancé le problème.

n°1274730
PGreg
Posté le 29-12-2005 à 23:58:01  profilanswer
 

Bonjour,  
 
Pour mon classeur, il existe bel et bien. Et que le chemin soit par défault ou pas, le programme trouve toujours une erreur à cet commande. Pourtant, il n' y a aucun problème pour trouver le chemin de l' object ActiveWorkbook (?)
 
Est -ce que vous auriez d' autre idée de se qui ne pourrait pas marcher ?
 
Merci

n°1274799
Epena
Posté le 30-12-2005 à 07:30:16  profilanswer
 

Bonjour,
 
Si Workbooks("XXX" ).Path renvoit une erreur, c'est que le classeur n'est pas ouvert. Dans ce cas, il faut rechercher le fichier.
 
Soit, il est dans le répertoire courant et alors, le fichier peut être ouvert sans chemin de fichier :  

Code :
  1. Dim NomFichier As String
  2. NomFichier = "Classeur1.xls"
  3. Workbooks.Open FileName:=NomFichier
  4. Chemin = Workbooks(NomFichier).Path
  5. Workbooks(NomFichier).Close
  6. 'Cela revient à écrire'
  7. Chemin = CurDir
  8. If Dir(Chemin & "\" & NomFichier) <> "" Then MsgBox Chemin


Dans le cas contraire, il faut rechercher le fichier par FileSearch avec recherche dans les sous-répertoires ou Dir(). C'est une opération beaucoup plus longue:

Code :
  1. Sub Test()
  2. Dim NomFichier As String
  3. NomFichier = "Classeur1.xls"
  4. With Application.FileSearch
  5.     .NewSearch
  6.     .LookIn = "C:\Documents and Settings"
  7.     .SearchSubFolders = True
  8.     .FileName = NomFichier
  9.     .MatchTextExactly = True
  10.     '.FileType = msoFileTypeExcelWorkbooks'
  11.         If .Execute() > 0 Then
  12.         For i = 1 To .FoundFiles.Count
  13.             While InStr(pos + 1, .FoundFiles(i), "\" ) <> 0
  14.                 pos = InStr(pos + 1, .FoundFiles(i), "\" )
  15.             Wend
  16.                 Dossier = Left(.FoundFiles(i), pos)
  17.             MsgBox "NomFichier : " & .FoundFiles(i) & vbLf & "Dossier : " & Dossier
  18.         Next i
  19.     Else
  20.         MsgBox "Aucun fichier n'a été trouvé."
  21.     End If
  22. End With
  23. End Sub


Cordialement
 
Epéna

n°1275125
PGreg
Posté le 30-12-2005 à 19:51:01  profilanswer
 

Bonjour,  
 
Merci Epéna, il me manquait juste un petit rien.
 
PGrég
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Mettre la main à la Path

 

Sujets relatifs
Probleme de main[SQL] un coup de main pour rouler mon join?
Mettre un formulaire dans un mailMettre à jour un classeur Excel intégré dans un formulaire Access
[ HTML / JS ] innerHTML et beaucoup de code à mettre dedansinitialiser un tableau 2D ds le main
Mettre en évidence les flux inter-applicatifsMain et valeur de retour
Peut on mettre une variable globale dans un gotoandplay ?peut-on mettre un "onclick=...." dans PHP ?
Plus de sujets relatifs à : Mettre la main à la Path


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR