Makro mehrmals ausführen
#1
Guten Tag an alle,

Ich habe folgendes Problem und ich hoffe ihr könnt mir weiterhelfen.

Folgenden Button habe ich erstellt :

Sub Schaltfläche1_Klicken()
ActiveWorkbook.RefreshAll
For Each qt In ActiveSheet.QueryTables
qt.Refresh (BackgroundQuery)
Next
End Sub


Dieser funktioniert auch soweit.

Ich habe aber festgestellt, dadurch dass ich mit Pivot Tabellen arbeite und in meiner Arbeitsmappe Daten aus anderen Excel Dateien abgefragt werden ich 2x den Button betätigen muss, Heisst also das Makro 2x durchführen muss bis die aktuellen Werte in meinen Tabellen angezeigt werden.

Wie kann ich jetzt in meine oben genannt Programmierung einfach eine schleife einbauen dass diese 2x durchgeführt wird. Ich den Button also nur 1x drücke und dadurch 2x die Aktualisierung abgearbeitet wird.

Habe mich durch mehre Foren gewühlt und das was ich dazu gefunden habe hat mir leider nicht weiter geholfen oder nicht funktioniert.
Ich bin jetzt auch nicht wirklich sehr bewandert was VBA angeht.

Vielen dank für eure Hilfe im voraus.

MFG
Antworten Top
#2
Hallo,

vielleicht auch so?

Code:
Sub Schaltfläche1_Klicken()
  Dim qt As QueryTable
  For Each qt In ActiveSheet.QueryTables
    qt.Refresh
  Next qt
  ActiveWorkbook.RefreshAll
End Sub

Gruß Uwe
Antworten Top
#3
Falls Uwes Tipp nicht reichen sollte, dann so?
Code:
Sub Schaltfläche1_Klicken()
Dim i as Integer, qt As QueryTable

For i = 1 To 2
    ActiveWorkbook.RefreshAll
    For Each qt In ActiveSheet.QueryTables
        qt.Refresh (BackgroundQuery)
    Next qt
Next i
End Sub
Schöne Grüße
Berni
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste