10 秒ごとにシートを切り替え、コピー アンド ペースト機能を使用してデータを取得するコードを 20 分ごとに実行し、「Esc」が押されるまでループするスクリプトが必要です。
これまでの私のコードは次のとおりです:
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
私のコードは、関数 BringPK03 がデータを取得してワークブックに貼り付けるまで実行され、その後もコードは続行されますが、何らかの理由でシート間の移動が機能しません。
答え1
Move_Between_Sheets() ではシートを選択しますが、アクティブ化しません。切り替えはアクティブ化した後にのみ実行されます。