Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Import Excel

4 réponses
Avatar
DB
Bonjour

Est-il possible en VB d'importer une feuille de calcul d'un classeur Excel
comportant plusieures feuilles dans une table Access en laissant le choix de
la feuille à importer à l'utilisateur ?

Merci d'avance

4 réponses

Avatar
Raymond [mvp]
Bonjour.

tu peux faire ceci:

Dim Feuille As String
Feuille = InputBox("Taper le nom de la feuille", "Import feuille Excel")
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "Matable",
"classeur1.xls", True, Feuille & "!"

le inputbox peut être remplacé par un champ texte du formulaire
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"DB" a écrit dans le message de
news:c61peh$7td$
Bonjour

Est-il possible en VB d'importer une feuille de calcul d'un classeur Excel
comportant plusieures feuilles dans une table Access en laissant le choix
de

la feuille à importer à l'utilisateur ?

Merci d'avance




Avatar
DB
En fait je voudrais proposer à l'utilisateur la liste des feuilles du
classeur pour qu'il puisse choisir.
Je pense qu'il faut utiliser Automation, mais je n'arrive pas à récupérer la
liste des feuilles.

"Raymond [mvp]" a écrit dans le message de
news: uDBa#
Bonjour.

tu peux faire ceci:

Dim Feuille As String
Feuille = InputBox("Taper le nom de la feuille", "Import feuille Excel")
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "Matable",
"classeur1.xls", True, Feuille & "!"

le inputbox peut être remplacé par un champ texte du formulaire
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"DB" a écrit dans le message de
news:c61peh$7td$
Bonjour

Est-il possible en VB d'importer une feuille de calcul d'un classeur
Excel


comportant plusieures feuilles dans une table Access en laissant le
choix


de
la feuille à importer à l'utilisateur ?

Merci d'avance








Avatar
Raymond [mvp]
Dans ce cas il faut passer par une liste modifiable dans un formulaire. pour
charger la liste modifiable tu peux faire:
Dim XL_App As Excel.Application
Dim I As Integer
Me.MaListe.RowSource = ""
Me.MaListe.RowSourceType = "liste valeurs"
Set XL_App = New Excel.Application
With XL_App
.Workbooks.Open ("classeur1.XLS")
For I = 1 To .ActiveWorkbook.Sheets.Count
Me.MaListe.RowSource = Me.MaListe.RowSource &
.ActiveWorkbook.Sheets(I).Name & ";"
Next
.ActiveWorkbook.Close
.Quit
End With
Set XL_App = Nothing
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "Matable",
"classeur1.xls", True, Me.MaListe & "!"

Bien penser de référencer la librairie excel.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"DB" a écrit dans le message de
news:c62u6k$imo$
En fait je voudrais proposer à l'utilisateur la liste des feuilles du
classeur pour qu'il puisse choisir.
Je pense qu'il faut utiliser Automation, mais je n'arrive pas à récupérer
la

liste des feuilles.



Avatar
DB
OK merci, çà fonctionne ! C'est tout à fait ce que je voulais.

"Raymond [mvp]" a écrit dans le message de
news:
Dans ce cas il faut passer par une liste modifiable dans un formulaire.
pour

charger la liste modifiable tu peux faire:
Dim XL_App As Excel.Application
Dim I As Integer
Me.MaListe.RowSource = ""
Me.MaListe.RowSourceType = "liste valeurs"
Set XL_App = New Excel.Application
With XL_App
.Workbooks.Open ("classeur1.XLS")
For I = 1 To .ActiveWorkbook.Sheets.Count
Me.MaListe.RowSource = Me.MaListe.RowSource &
.ActiveWorkbook.Sheets(I).Name & ";"
Next
.ActiveWorkbook.Close
.Quit
End With
Set XL_App = Nothing
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "Matable",
"classeur1.xls", True, Me.MaListe & "!"

Bien penser de référencer la librairie excel.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"DB" a écrit dans le message de
news:c62u6k$imo$
En fait je voudrais proposer à l'utilisateur la liste des feuilles du
classeur pour qu'il puisse choisir.
Je pense qu'il faut utiliser Automation, mais je n'arrive pas à
récupérer


la
liste des feuilles.