Récupération de nom de fichiers et chemin en VBA

Récupération de nom de fichiers et chemin en VBA - VB/VBA/VBS - Programmation

Marsh Posté le 06-07-2004 à 22:20:56    

 Salut à tous,
 
  voilà mon pb.
 
   Je récupère dans un UserForm1 25 chemins correspondant à 25 fichiers .xls que je vais analyser récursivement.
 

Code :
  1. Private Sub buttonW01_Click()
  2.      ChDir ("C:\" )
  3.     W1 = Application.GetOpenFilename(FileFilter:="XLS Files (*.xls), *.xls", Filterindex:=1, Title:="Select The File To Analyse", MultiSelect:=False)
  4.     LienW01.Text = W1
  5.    
  6. End Sub
  7. Private Sub buttonW02_Click()
  8.      ChDir ("C:\" )
  9.     W2 = Application.GetOpenFilename(FileFilter:="XLS Files (*.xls), *.xls", Filterindex:=1, Title:="Select The File To Analyse", MultiSelect:=False)
  10.     LienW02.Text = W2
  11.    
  12. End Sub


  etc...
 
   Dans un module, j'ai crée la procédure suivante :
   

Code :
  1. Sub Analysis()
  2.    Dim i As Integer
  3.  
  4.  
  5. Application.StatusBar = "Chargements des données..."
  6. ' Tracé de la Spin Curve
  7. SpinCurve (FileThickness)
  8. ' Copie des datas de CD / Création du tableau Thickness vs CD et tracé de la Swing Curve
  9. ActiveWorkbook.Windows(2).Caption = "Swing Curve"
  10.     'Windows("SwingCurve" ).Activate
  11.     Worksheets("SpinCurveDatas" ).Select
  12.     Sheets.Add
  13.     Sheets(2).Select
  14.     Sheets(2).Move After:=Sheets(3)
  15.     Sheets(3).Select
  16.     Sheets(3).Name = "CDRawDatas"
  17. For i = 1 To 25
  18.    
  19.     Workbooks.Open Filename:="W" & i
  20.            
  21.     Worksheets(1).Select
  22.     Range("B3:L19" ).Select
  23.     Selection.Copy
  24.     Windows("Swing Curve" ).Activate
  25.     Worksheets(3).Select
  26.     Cells(1 + 17 * Nbre, 2).Select
  27.     ActiveSheet.Paste
  28.     Cells(1 + 17 * Nbre, 1).Select
  29.     Application.CutCopyMode = False
  30.     ActiveCell.FormulaR1C1 = Nbre
  31.      
  32. Next i


 
  et j'ai déclaré tous mes liens comme  
 

Code :
  1. Public W1 As Variant


 
   et donc quand je lance ma Macro, j'ai une erreur d'execution 1004,
le fichier "W1.xls" est introuvable. Normal car ce fichier n'existe pas, W1 est le lien au fichier que je veux ouvrir...
 
   Une idée ???
 
  Merci d'avance
 
   Raph
 
 

Reply

Marsh Posté le 06-07-2004 à 22:20:56   

Reply

Marsh Posté le 07-07-2004 à 00:30:33    

rapidement comme çan c'est pas à causes des guillements autour du W de
Workbooks.Open Filename:="W" & i  
?

Reply

Marsh Posté le 07-07-2004 à 00:33:25    

ah non jdis une connerie :o

Reply

Marsh Posté le 07-07-2004 à 09:52:54    

On ne peut pas mettre un nom de variable en variable ! "W" est interprete comme une chaine, pas comme le debut du nom de variable.
 
Le mieux, c'est de declarer un tableau de strings à 25 entrées.
Dim W(0 to 24) as String
avec W(0) = fichier 1
etc...

Reply

Marsh Posté le 07-07-2004 à 13:10:49    

JiHemAir a écrit :

On ne peut pas mettre un nom de variable en variable ! "W" est interprete comme une chaine, pas comme le debut du nom de variable.
 
Le mieux, c'est de declarer un tableau de strings à 25 entrées.
Dim W(0 to 24) as String
avec W(0) = fichier 1
etc...


 
  OK merci je vais essayer ca  ;)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed