Importer une feuille excel
spouich
-
spouich -
spouich -
Bonjour,
J'ai une application ".xls" en deux parties :
-Un fichier "gestion.xls" contient le programme, les userforms, les paramètres;
-Un fichier "bdd.xls" contient la base de données.
Je voudrais qu'à l'ouverture de "gestion.xls", le programme importe le fichier "bdd.xls" et copie les données pour être gérées par le programme.
Pour être clair :
-"Gestion.xls" contient plusieurs feuilles :
:: "Internal" pour les paramètres internes (chemin d'accès, etc)
:: "External" pour les données que je souhaite importer
:: "Work" pour les calculs excel standard
-"bdd.xls" contient une seule feuille :
::"Base" qui contient toutes les données.
Autrement dit, tout en vulgarisant complètement le langage, à l'ouverture du programme principal, je voudrais un truc du genre :
Voilà, je sais très bien que ce code va tout faire planter, mais c'est juste pour donner l'idée de ce que je cherche. Autrement dit un code qui tient en moins de 10 lignes, facile à comprendre, et qui donne du résultat...
Pouvez-vous m'aider ?
Merci d'avance.
J'ai une application ".xls" en deux parties :
-Un fichier "gestion.xls" contient le programme, les userforms, les paramètres;
-Un fichier "bdd.xls" contient la base de données.
Je voudrais qu'à l'ouverture de "gestion.xls", le programme importe le fichier "bdd.xls" et copie les données pour être gérées par le programme.
Pour être clair :
-"Gestion.xls" contient plusieurs feuilles :
:: "Internal" pour les paramètres internes (chemin d'accès, etc)
:: "External" pour les données que je souhaite importer
:: "Work" pour les calculs excel standard
-"bdd.xls" contient une seule feuille :
::"Base" qui contient toutes les données.
Autrement dit, tout en vulgarisant complètement le langage, à l'ouverture du programme principal, je voudrais un truc du genre :
'Ceci est complètement vulgarisé
open workbook "c:\DATABASE\bdd.xls"
sheets("bdd.Base").range("A1:IV65535").copy
sheets("Gestion.External").range("A1").paste
Voilà, je sais très bien que ce code va tout faire planter, mais c'est juste pour donner l'idée de ce que je cherche. Autrement dit un code qui tient en moins de 10 lignes, facile à comprendre, et qui donne du résultat...
Pouvez-vous m'aider ?
Merci d'avance.
A voir également:
- Importer une feuille excel
- Liste déroulante excel - Guide
- Feuille de pointage excel - Télécharger - Tableur
- Déplacer une colonne excel - Guide
- Word et excel gratuit - Guide
- Verrouiller cellule excel sans verrouiller la feuille - Guide
1 réponse
Salut spouich
Avec le mode enregistrement de macros et quelques retouches voila ce que ça donne
Code à placer dans un module de gestion.xls
Et si tu veux que la macro s'exécute automatiquement à l'ouverture de gestion.xls, placer ce code dans ThisWorkbook
Avec le mode enregistrement de macros et quelques retouches voila ce que ça donne
Code à placer dans un module de gestion.xls
Sub Importer_BDD()
'
Application.ScreenUpdating = False
Windows("gestion.xls").Activate
Sheets("External").Select
Cells.Select
Selection.ClearContents
Range("A1").Select
Workbooks.Open Filename:="c:\DATABASE\bdd.xls"
Sheets("Base").Select
Cells.Select
Selection.Copy
Windows("gestion.xls").Activate
ActiveSheet.Paste
Range("A1").Select
Windows("bdd.xls").Activate
Application.DisplayAlerts = False
ActiveWindow.Close
Application.ScreenUpdating = True
End Sub
Et si tu veux que la macro s'exécute automatiquement à l'ouverture de gestion.xls, placer ce code dans ThisWorkbook
Private Sub Workbook_Open()
Importer_BDD
End Sub
Je l'ai adapté à mon appli, ça marche exactement comme je le souhaitais !
Maintenant, je n'ai plus qu'à le bidouiller pour inverser le transfert quand je souhaite 'exporter' la base de données :)
Merci beaucoup.