Récupérer une donnée dans une inputbox
Résolu
lana
-
pijaku Messages postés 12263 Date d'inscription Statut Modérateur Dernière intervention -
pijaku Messages postés 12263 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
Je cherche une méthode qui permet de récupérer le nom d'un fichier excel entré par un utilisateur via une inputbox pour ensuite l'appliquer automatiquement dans mes macros.
Voici ce que j'ai fait pour le moment:
Sub Ouvrir()
Dim fichier
fichier = InputBox("Entrez le nom du fichier")
ChDir "d:\Documents and Settings\docs infos"
Workbooks.Open Filename:=fichier
Workbooks(" & fichier.xls").Worksheets("Données Gr").Range("A1").EntireRow.Copy Workbooks("Essai.xls").Worksheets("Feuil1").Range("A1")
end sub
Mais cela ne fonctionne pas. Est-ce que quelqu'un sait comment faire pour appliquer la valeur de ma variable "fichier" dans mes macros sans avoir à la reécrire manuellement?
Merci ^^
Je cherche une méthode qui permet de récupérer le nom d'un fichier excel entré par un utilisateur via une inputbox pour ensuite l'appliquer automatiquement dans mes macros.
Voici ce que j'ai fait pour le moment:
Sub Ouvrir()
Dim fichier
fichier = InputBox("Entrez le nom du fichier")
ChDir "d:\Documents and Settings\docs infos"
Workbooks.Open Filename:=fichier
Workbooks(" & fichier.xls").Worksheets("Données Gr").Range("A1").EntireRow.Copy Workbooks("Essai.xls").Worksheets("Feuil1").Range("A1")
end sub
Mais cela ne fonctionne pas. Est-ce que quelqu'un sait comment faire pour appliquer la valeur de ma variable "fichier" dans mes macros sans avoir à la reécrire manuellement?
Merci ^^
A voir également:
- Récupérer une donnée dans une inputbox
- Recuperer message whatsapp supprimé - Guide
- Comment recuperer une video sur youtube - Guide
- Comment récupérer un document dans le presse-papier samsung - Guide
- Recuperer le son d'une video - Guide
- Récupérer mon compte facebook désactivé - Guide
Personnellement, lorsque je dois faire ouvrir un fichier par une macro, je procède comme ceci :
Merci à Lermitte222 pour cette astuce
J'obtiens le message d'erreur (l'indice n'appartient pas à la sélection) en écrivant ceci:
Option Explicit
Public fichier As String
Sub Ouvrir()
Dim ChDir As String
ChDir = "d:\Documents and Settings\docs infos\"
fichier = InputBox("Entrez le nom du fichier", "Téléchargement des données")
If fichier = "" Then Exit Sub
On Error GoTo NonTrouve
Workbooks.Open ChDir & fichier & ".xls"
Exit Sub
NonTrouve:
MsgBox "Fichier:" & fichier & ".xls non trouvé dans: " & ChDir
fichier = ActiveWorkbook.Name
Workbooks(fichier).Worksheets("Données Gr").Range("A1").EntireRow.Copy Workbooks("Essai.xls").Worksheets("Feuil1").Range("A1")
End Sub
il me surligne en jaune la procédure de copie de la ligne.
j'ai aussi essayé avec workbooks( fichier & ".xls") mais ça ne va pas non plus..
Merci en tout cas pour ton aide pijaku :)
Ma macro ne te convenait pas?
l'indice n'appartient pas à la sélection signifie qu'il n'arrive pas à atteindre soit le classeur, soit la feuille soit le range concerné...
Ta macro est sens dessus dessous...
je t'ai mis des commentaires dans ton code.
En fait, ta macro n'effectue la copie de ligne que dans le cas ou le fichier n'a pas été trouvé...... Marche pas? Ah bon? Si vraiment ma macro te gène, essaie celle ci :
bon week end