Ouverture classeur avec macro - mais sur choix utilisateur
Résolu
Maxxikilla
Messages postés
40
Statut
Membre
-
Maxxikilla Messages postés 40 Statut Membre -
Maxxikilla Messages postés 40 Statut Membre -
Bonjour,
Je ne sais pas vraiment si ce que je demande est possible, mais ca vaut le coup d'essayer.
Je vous explique. J'ai un fichier excel basique. Je veux faire une macro qui importe les données d'un autre fichier excel. (jusque la tout va bien)
le hic, c'est que le nom de cet autre fichier excel change.
Ca ne poserait pas de problème si c'était moi qui utilisait la macro et le fichier excel, mais je le développe pour une entreprise.
J'aimerai savoir, si, au lancement de la macro, on pourrait avoir une fenetre de type "ctrl+o" qui permettrait de choisir à quel fichier excel au appliquerait la macro ?
En résumé si l'utilisateur peut choisir quel excel importer dans son excel de base ..
J'espère avoir été assez clair :). Merci d'avance pour votre aide !
Je ne sais pas vraiment si ce que je demande est possible, mais ca vaut le coup d'essayer.
Je vous explique. J'ai un fichier excel basique. Je veux faire une macro qui importe les données d'un autre fichier excel. (jusque la tout va bien)
le hic, c'est que le nom de cet autre fichier excel change.
Ca ne poserait pas de problème si c'était moi qui utilisait la macro et le fichier excel, mais je le développe pour une entreprise.
J'aimerai savoir, si, au lancement de la macro, on pourrait avoir une fenetre de type "ctrl+o" qui permettrait de choisir à quel fichier excel au appliquerait la macro ?
En résumé si l'utilisateur peut choisir quel excel importer dans son excel de base ..
J'espère avoir été assez clair :). Merci d'avance pour votre aide !
A voir également:
- Ouverture classeur avec macro - mais sur choix utilisateur
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Liste déroulante de choix excel - Guide
- Comment utiliser chromecast sur tv - Guide
- Page d'ouverture google - Guide
- Télécharger macro convertir chiffre en lettre excel - Télécharger - Tableur
5 réponses
Bonjour,
voila comment faire :
___
'IMPORTATION D'UNE SEULE FEUILLE DE DONNEES
Sub ImportTextFile()
Dim DestBook As Workbook, SourceBook As Workbook
Dim DestCell As Range
Dim RetVal As Boolean
Dim Chemin As String
' Turn off screen updating.
Application.ScreenUpdating = False
'chemin en relatif du dossier ou se trouve tes données
Chemin = Sheets("Chemins").Cells(33, "D")
'ou en hard
'Chemin = "C:\...\dossier"
ChDir Chemin
' Set object variables for the active book and active cell.
Set DestBook = ActiveWorkbook
Set DestCell = Range("E59") 'active la cellule OU TU AIMERAIS COPIER LES DONNEES
' Show the Open dialog box.
RetVal = Application.Dialogs(xlDialogOpen).Show(Chemin & "\*.*")
' If Retval is false (Open dialog canceled), exit the procedure.
If RetVal = False Then Exit Sub
' Set an object variable for the workbook containing the text file.
Set SourceBook = ActiveWorkbook
' Copy the contents of the entire sheet containing the text file.
Range(Range("A1"), Range("A1").SpecialCells(xlLastCell)).Copy
'OU copie un range défini
'Range("A1:AD2000").copy
' Activate the destination workbook and paste special the values
' from the text file.
DestBook.Activate
DestCell.PasteSpecial Paste:=xlValues
' Close the book containing the text file.
SourceBook.Close False
Application.ScreenUpdating = True
End Sub
______
Le chemin est en fait ou tu aimerais que la fenetre ouvrir soit initialement pointée. SI tu dois toujours te balader dans 150 dossiers sur le réseau avant d'arriver au bon, ta meilleur temps de pointer directement sur le bon ^^
Amicalement,
Régis
voila comment faire :
___
'IMPORTATION D'UNE SEULE FEUILLE DE DONNEES
Sub ImportTextFile()
Dim DestBook As Workbook, SourceBook As Workbook
Dim DestCell As Range
Dim RetVal As Boolean
Dim Chemin As String
' Turn off screen updating.
Application.ScreenUpdating = False
'chemin en relatif du dossier ou se trouve tes données
Chemin = Sheets("Chemins").Cells(33, "D")
'ou en hard
'Chemin = "C:\...\dossier"
ChDir Chemin
' Set object variables for the active book and active cell.
Set DestBook = ActiveWorkbook
Set DestCell = Range("E59") 'active la cellule OU TU AIMERAIS COPIER LES DONNEES
' Show the Open dialog box.
RetVal = Application.Dialogs(xlDialogOpen).Show(Chemin & "\*.*")
' If Retval is false (Open dialog canceled), exit the procedure.
If RetVal = False Then Exit Sub
' Set an object variable for the workbook containing the text file.
Set SourceBook = ActiveWorkbook
' Copy the contents of the entire sheet containing the text file.
Range(Range("A1"), Range("A1").SpecialCells(xlLastCell)).Copy
'OU copie un range défini
'Range("A1:AD2000").copy
' Activate the destination workbook and paste special the values
' from the text file.
DestBook.Activate
DestCell.PasteSpecial Paste:=xlValues
' Close the book containing the text file.
SourceBook.Close False
Application.ScreenUpdating = True
End Sub
______
Le chemin est en fait ou tu aimerais que la fenetre ouvrir soit initialement pointée. SI tu dois toujours te balader dans 150 dossiers sur le réseau avant d'arriver au bon, ta meilleur temps de pointer directement sur le bon ^^
Amicalement,
Régis
Cela vient du fait que pour le Chdir ton adresse ne doit pas comporter de \ à la fin ;-)
Essaye de mettre "A:" ou juste avancer d'un dossier et "A:\dossier"
sinon tu peux carrément enlever l'intérieur du show() mais alors là, ton ouverture poitnera sur ton bureau ou dans "mes document"
Essaye de mettre "A:" ou juste avancer d'un dossier et "A:\dossier"
sinon tu peux carrément enlever l'intérieur du show() mais alors là, ton ouverture poitnera sur ton bureau ou dans "mes document"
Re,
Tout d'abord, merci pour ta réponse éclair !!
Pour le chemin, j'ai besoin d'un hard. J'ai donc mis Chemin = "A:\" car les fichiers sont directement là.
J'ai un petit soucis au niveau de ChDirChemin, il ne trouve pas le chemin
error "Path no found"
Aurais tu une idée du pourquoi ?
Amicalement, Maxime.
Tout d'abord, merci pour ta réponse éclair !!
Pour le chemin, j'ai besoin d'un hard. J'ai donc mis Chemin = "A:\" car les fichiers sont directement là.
J'ai un petit soucis au niveau de ChDirChemin, il ne trouve pas le chemin
error "Path no found"
Aurais tu une idée du pourquoi ?
Amicalement, Maxime.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Ca fonctionne merci beaucoup !!!
Il y a juste un petit détail:
- il y a un message qui me demande si je veux garder la selection dans le "clipboard", parce qu'en fait, il ouvre le excel sélectionné, il copie,puis il le ferme. Ducoup il veut savoir s'il doit garder en mémoire le "ctrl+c" .. Y a t-il un moyen de lui dire oui par défaut ?
Cette commande serait elle la solution ? DisplayAlerts = False
Il y a juste un petit détail:
- il y a un message qui me demande si je veux garder la selection dans le "clipboard", parce qu'en fait, il ouvre le excel sélectionné, il copie,puis il le ferme. Ducoup il veut savoir s'il doit garder en mémoire le "ctrl+c" .. Y a t-il un moyen de lui dire oui par défaut ?
Cette commande serait elle la solution ? DisplayAlerts = False