Bonjour à tous,
J'ai fait un module afin d'automatiser l'import d'une base de données. Cependant, cette base change tous les mois, c'est-à-dire qu'il peut y avoir des lignes supplémentaires ou inversement.
J'aimerai donc pouvoir ouvrir le fichier à sélectionner, choisir la plage à importer et que la macro puisse continuer à tourner.
Je vous ai mis la macro juste en dessous, comme vous pouvez le voir le copier/coller se fait en fonction des cellules visibles uniquement, je souhaiterai donc qu'après avoir sélectionner la plage manuellement, l'utilisateur clique sur ENTER et la macro continue de fonctionner automatiquement.
Après l'ouverture de la message box je ne sais pas quelle ligne écrire afin que l'utilisateur choissise la plage et clique sur enter !!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 Sub ImportDIE() ' ' Import ' Importer base de données DI Eurose ' ' 'Lancer cette macro en premier juste après la base obligation car l'ajout dans cette base est spécialement conçu pour être lancé en premier Dim MonFichier MonFichier = Application.GetOpenFilename("Fichiers Excel avec macro (*.xlsm),*.xlsm") MsgBox ("Selectionner la plage à importer puis cliquer sur ENTER") Windows("Archive DNC.xlsm").Activate Range("B6:AU187").Select 'nombre de ligne peut varier Selection.SpecialCells(xlCellTypeVisible).Select Selection.Copy Windows("template import données obligataires infocentre_20180430.xlsm"). _ Activate Sheets.Add After:=ActiveSheet ActiveSheet.Name = "Base DIE" Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Range("A1").Select End Sub
Merci d'avance pour votre aide
Partager