Bonjour à tous,
J'avais l'habitude avec Excel 2002 d'extraire depuis un fichier mdb des informations à l'aide de ce type de code :
J'avais utilisé l'enregistreur de macro !
Maintenant avec Excel 2007 je suis perdu! J'ai trouvé (il me semble ) le moyen d'extraire mais on ne peut pas ajouter de condition( Where ), je suis obligé d'importer la base toute entière!
Merci d'avance,
Nicolas
J'avais l'habitude avec Excel 2002 d'extraire depuis un fichier mdb des informations à l'aide de ce type de code :
Code:
With ActiveSheet.QueryTables.Add(Connection:=Array(Array( _
"ODBC;DSN=MS Access Database;DBQ=C:\HPCi_V2\Systemfiles\Riodatabase\SIOLIST.mdb;DefaultDir=C:\HPCi_V2\Systemfiles\Riodatabase;DriverI" _
), Array("d=25;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;")), Destination _
:=Range("A1"))
.CommandText = Array( _
"SELECT SYSTEM.`N°`, SYSTEM.Name, SYSTEM.Description, SYSTEM.Offset, SYSTEM.IOInput, SYSTEM.Resolution, SYSTEM.Master" & Chr(13) & "" & Chr(10) & "FROM `C:\HPCi_V2\Systemfiles\Riodatabase\SIOLIST`.SYSTEM SYSTEM" & Chr(13) & "" & Chr(10) & "WHERE system.used = 1" & Chr(13) & "" & Chr(10) & "ORDER BY system.IOInput ASC , system.offset ASC")
.name = "Lancer la requête à partir de MS Access Database"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = True
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
ActiveSheet.Unprotect
.Refresh BackgroundQuery:=False
J'avais utilisé l'enregistreur de macro !
Maintenant avec Excel 2007 je suis perdu! J'ai trouvé (il me semble ) le moyen d'extraire mais on ne peut pas ajouter de condition( Where ), je suis obligé d'importer la base toute entière!
Merci d'avance,
Nicolas