Attacher feuilles Excel
Pour lier les feuilles d'un document Excel comme table dans une base, on peut utiliser la fonction ci-dessous. Chaque feuilles du document constituera un table liée.
Pensez à cocher la référence Excel.
Option Compare Database
Option Explicit
Public appXl As Excel.Application
Public WorkSheet As Excel.WorkSheet
Public Const strAppXl As String = "Excel.Application"
Public Function AttacheExcel(strNomFile As String)
'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
' Syntaxe: AttacheExcel "cheminfichier.xls"
'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Dim intNbFeuille As Integer
Dim tabFeuille() As Variant
Dim intIndex As Integer
Dim tdf As TableDef
Set appXl = CreateObject(strAppXl)
intNbFeuille = 1
With appXl
.Workbooks.Open strNomFile
ReDim tabFeuille(.Worksheets.Count)
For Each WorkSheet In .Worksheets
tabFeuille(intNbFeuille) = WorkSheet.Name
intNbFeuille = intNbFeuille + 1
Next
.Quit
End With
Set appXl = Nothing
For intIndex = 1 To UBound(tabFeuille)
Set tdf = CurrentDb.CreateTableDef(tabFeuille(intIndex))
tdf.Connect = "Excel 5.0;DATABASE=" & strNomFile
tdf.SourceTableName = tabFeuille(intIndex) & "$"
CurrentDb.TableDefs.Append tdf
CurrentDb.TableDefs.Refresh
Next
Set tdf = Nothing
End Function
Dernière modification : 05/04/2013 19:23
Catégorie : Les mémos - Tables
Page lue 5822 fois