|
|
|
|
Configuration: Windows XP Firefox 1.5.0.11
Bonjour,
Pour ouvrir un classeur sour Excel, en VBA, la commande est : Workbooks.Open Filename:="Chemin\NomDuClasseur.xls" Donc, à partir de là, la procédure pourrait être : Sub OuvrirClasseur() Dim strFichier As String 'Remplacer "Chemin" par le chemin complet du répertoire 'où se trouve le classeur à ouvrir, correspondant à DIR... 'Par exemple "C:\Applications\Excel" Const strRepertoire = "Chemin" strFichier = Sheets("Table").Cells(28, 3).Value Workbooks.Open Filename:=strRepertoire & "\" & strFichier End Sub J'espère que cela peut aider... |
Excellent! merci
Question subsidiaire: 1/ dans ton code tu précises le chemin de mannière absolue (C:\Applications\Excel). Sachant que les fichiers à ouvrir seront tjrs dans la même DIR que la feuille de calcul, mais que cette DIR pourrait varier, peut-on envisager un adressage 'relatif' ? 2/ la cellule Cells(28,3) est nommée 'open'. Quelle syntaxe pour l'utiliser sous cette appelation? En tout cas, ton aide a été précieuse. Quand j'y pense, coincer là-dessus ... Merci |
Bonjour,
exemple :
Sub Test()
Dim NomFichier As String
NomFichier = ActiveWorkbook.FullName
NomFichier = Left(NomFichier, InStrRev(NomFichier, "\"))
NomFichier = NomFichier & Range("open").Value
MsgBox NomFichier
Workbooks.Open (NomFichier)
End Sub
'
Lupin |
j'ai mieux car je cherche
En fait j'ouvre sous excel un explorateur d'objet pour que tu trouve ton fichier et ensuite je l'ouvre Tu exclue ainsi une longue recopie du chemin d'acces et en plus ton fichier s'ouvre voila le code Sub Macro1() nom = Application.GetOpenFilename("Nom fichier,*.xls") Workbooks.Open nom end sub |
Bonjour,
oui, je comprends cette technique, toutefois, celle-ci oblige une intervention et ne pourra être utilisé lors d'un automatisme de nuit ou quelques chose du genre. Tout dépend du besoin et cette précision n'a pas été soumis dans le devis de Kolitchev. justement, le nom du fichier est donné en [range(open).value], donc pas besoin de demander ou est le fichier à l'utilisateur puisqu'il est spécifier que tous les fichiers sont dans le même dossier, il ne s'agit que de trouver celui-ci :-) ceci dit, pour sélectionner un nom par l'utilisateur, à partir d'une localisation [ Range ], j'aurais proposé :
Sub OuvrirFichier()
Dim objNomFichier As Range, strNomFichier As String
Set objNomFichier = Application.InputBox("Cellule source : ", Type:=8)
strNomFichier = ActiveWorkbook.FullName
strNomFichier = Left(strNomFichier, InStrRev(strNomFichier, "\"))
NomFichier = NomFichier & "\" & objNomFichier.Value
Workbooks.Open (NomFichier)
Set objNomFichier = Nothing
End Sub
'
je ne crois pas qu'il y ait de mauvaise méthode, je ne propose que des suggestion libre au demandeur de formuler ou non l'utilité de ces suggestions. perso, quand je pose une question, c'est que j'ai besoin d'aide et la plus part du temps l'aide est bienvenue, n'est pas à cela que ce forum sert ! Cordialement Lupin |
Résultats pour [VBA] open d'un fichier / nom est en variable
Résultats pour [VBA] open d'un fichier / nom est en variable
Résultats pour [VBA] open d'un fichier / nom est en variable
Résultats pour [VBA] open d'un fichier / nom est en variable