bluesky12000
XLDnaute Junior
Bonsoir à tous,
Dans mon classeur, j'ai plusieurs tableaux Query qui sont en connexion et que je veux insérer dans mon deuxième onglet.
J'ai créé une macro via l'enregistreur pour transformer toutes ces connexions en tableau.
Cela fonctionne très bien (voir bouton vert)
J'arrive aussi à toutes les supprimer (voir bouton rouge)
Mon idée est de charger et de supprimer que le nombre de tableaux indiqué en cellule B1 à la place de For i = 1 to 4
Dans ma macro pour ajouter les tableaux (module 2 - Test) j'ai essayé de changer le nom du tableau en variable, mais cela n'a pas l'air de fonctionner.
Je suis un peu perdu avec mes connaissances limitées. Est ce que quelqu'un saurait comment faire?
Merci pour votre aide et bonne soirée à tous,
Dans mon classeur, j'ai plusieurs tableaux Query qui sont en connexion et que je veux insérer dans mon deuxième onglet.
J'ai créé une macro via l'enregistreur pour transformer toutes ces connexions en tableau.
Cela fonctionne très bien (voir bouton vert)
J'arrive aussi à toutes les supprimer (voir bouton rouge)
Mon idée est de charger et de supprimer que le nombre de tableaux indiqué en cellule B1 à la place de For i = 1 to 4
Dans ma macro pour ajouter les tableaux (module 2 - Test) j'ai essayé de changer le nom du tableau en variable, mais cela n'a pas l'air de fonctionner.
VB:
Sub Test()
Dim i
Dim myLastRow As Long
myLastRow = Range("B1000").End(xlUp).Row
For i = 1 To 1
With ActiveSheet.ListObjects.Add(SourceType:=0, Source:= _
"OLEDB;Provider=Microsoft.Mashup.OleDb.1;Data Source=$Workbook$;Location=""Table"" & i & ""_client"";Extended Properties=""""" _
, Destination:=Range(myLastRow)).QueryTable
.CommandType = xlCmdSql
.CommandText = Array("SELECT * FROM [""Table"" & i & ""_client]""")
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.ListObject.DisplayName = "Table" & i & "_client"
.Refresh BackgroundQuery:=False
End With
Next
End Sub
Je suis un peu perdu avec mes connaissances limitées. Est ce que quelqu'un saurait comment faire?
Merci pour votre aide et bonne soirée à tous,