VBA初心者だけどハマった!ワークシートごとに 2 週間のブロックが 1 つある 2 週間のブロックで残業を追跡するワークブックを作成しました。デバッグしようとしているマクロは、ワークシートで行われた変更を次のワークシートに引き継ぐように設計されています。トリックは、ある行のデータが次のワークシートの別の行にある可能性があるため、マクロで VLookup を使用して正確に保つことです。
Sub CarryForward()
Dim Answer As String
Answer = MsgBox("This should only be used for a PERMANENT crew change." & vbNewLine & "If you are adding a new person to the list," & vbNewLine & "please use the Re-Sort function." & vbNewLine & "Do you want to continue?", vbExclamation + vbYesNo, "Caution!")
If Answer = vbNo Then
Exit Sub
End If
Application.ScreenUpdating = False
Dim ActiveWorksheet As String
ActiveWorksheet = ActiveSheet.Name
For i = (ActiveSheet.Index + 1) To Sheets("DATA").Index - 1
For x = 5 To 25
Dim a As String
Dim b As String
a = "B" & x
b = "C" & x
ActiveSheet.Range(b).Value = Application.WorksheetFunction.VLookup(a, Sheets(ActiveWorksheet).Range("B5:C25"), 2, False)
Next x
Range("A3").Select
Next i
Sheets(ActiveWorksheet).Select
Application.CutCopyMode = False
Range("A3").Select
Application.ScreenUpdating = True
End Sub
VLookup コード行の単なる構文エラーであると確信しています。投稿された多くのヘルプは、私が探しているものに近づいていますが、フィニッシュ ラインを越えられません。
どんな助けでも大歓迎です!