Ich brauche ein Skript, das alle 10 Sekunden zwischen den Tabellen wechselt und dann alle 20 Minuten Code ausführt, der mithilfe der Kopier- und Einfügefunktion einige Daten einbringt und dann eine Schleife abläuft, bis ich „Esc“ drücke.
Dies ist mein Code bisher:
Sub Move_Between_Sheets()
Dim i As Long, j As Long, t As Single, k As Long
Application.ScreenUpdating = True
i = 0
j = Sheets.Count
On Error GoTo exit_
Application.EnableCancelKey = xlErrorHandler
Do
For k = 1 To 3
i = i + 1
If i > j Then i = 1
Sheets(i).Select
t = Timer + 1
Application.Wait Now + TimeSerial(0, 0, 10)
If Timer < t Then Exit Do
Next k
Call BringPK03
Loop
exit_:
End Sub
------------------
Sub BringPK03()
Dim sheet As Worksheet
Dim wbPlantillas As Workbook
Dim wbAplicativo As Workbook
Set wbAplicativo = ThisWorkbook
Application.ScreenUpdating = False
'Application.Calculation = xlCalculationManual
'13. URL [Link]
'The database workbook is opened from WorkPoint. The sheets in database workbook are copied and pasted in wbAplicativo
Set wbPlantillas = Workbooks.Open("C:\Users\jmartine\Desktop\Tracking Advance.xlsx", True, True)
wbPlantillas.Sheets("FC Paso a Paso").Range("A1:AU4500").Copy
wbAplicativo.Sheets("Sheet1").Range("A1:AO1573").PasteSpecial xlPasteValues
Application.CutCopyMode = False
wbPlantillas.Close savechanges:=False
Windows("BringData.xlsm").Activate
wbAplicativo.Worksheets("Sheet1").Activate
Application.ScreenUpdating = True
Range("A1").Select
Call Move_Between_Sheets
End Sub
Mein Code wird ausgeführt, bis die Funktion BringPK03 die Daten bringt und sie in meine Arbeitsmappe einfügt. Dann wird der Code weiter ausgeführt, aber irgendwie funktioniert das Verschieben zwischen den Blättern nicht.
Antwort1
In Move_Between_Sheets() wählst du das Blatt zwar aus, aktivierst es aber nicht. Der Wechsel erfolgt erst nach der Aktivierung.