[英]Excel VBA For Each Worksheet Loop (Run Same VBA Macro Code On Multiple Sheets)
我有3個具有不同數據的工作表的工作簿。 現在,我正在嘗試為每個工作表執行相同的代碼(將特定的單詞與來自1,3列的數據連接起來,然后將3個單元格的范圍從行轉移到列)下面的代碼實際上並不需要我執行此操作。簡單地對最后一張紙做正確的操作,然后將此結果復制到另一張紙上。 但是我需要每張紙的唯一結果。 任何幫助是極大的贊賞!
Option Explicit
Sub forEachWS()
Dim wb As Workbook
Dim ws As Worksheet
Set wb = ActiveWorkbook
For Each ws In wb.Worksheets
ws.Columns("G:J").Clear
Call execute(ws)
Next
End Sub
Sub execute(ws As Worksheet)
Dim intLastRow As Long
Dim intR As Long
Const intStartRow As Integer = 2
Dim destRow As Long
With ws
intLastRow = .Cells(.Rows.Count, 1).End(xlUp).Row
destRow = 2
For intR = intStartRow To intLastRow
.Range("G" & intR) = "ID =" & Cells(intR, 1).Value
.Range("H" & intR) = "[FROM].[#" & Cells(intR, 3).Value
.Range("I" & intR) = "END"
.Range("G" & intR & ":I" & intR).Copy
.Range("J" & destRow).PasteSpecial Transpose:=True
destRow = destRow + 3
Next
End With
End Sub
我很驚訝,但是在以下情況下可以使用:
Cells(intR, n).Value
替換為:
Range("Colmn" & intR).Value
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.