1
我目前正在寫一個簡單的宏(見下文)。我打算讓宏更改我的工作簿中的所有工作表。但是,它只會改變我所在活動工作表中的單元格,我不得不手動移動到下一個工作表並運行宏來更改當前的單元格,但它非常乏味,特別是當我有大約125個工作表要更新時。代碼不會去下一張表,只是改變活動表
Sub worksheetloop()
Dim sh As Worksheet
With ThisWorkbook
For Each sh In ActiveWorkbook.Worksheets
Range("$F$5") = "toothwidth" ' Key contact
Range("$F$8") = "x,y,z" ' Core team
Range("$J$5") = "bleh" 'date
Range("$L$5") = "9/12/" 'Updated
Range("$M$5") = "A" ' Revision Date
Next sh
End With
End Sub
奏效,但你可以解釋,爲什麼?我不明白你的意思是什麼資格。 –
@SergioOropeza在你的代碼中使用'Range(「$ F $ 5」)=「toothwidth」',這意味着在'ActiveSheet'中尋找這個範圍。如果你噓'sh.Range(「$ F $ 5」)=「齒寬」',這意味着用'sh'工作表限定你的範圍。 –
簡而言之,你的'With'語句對'Range'沒有用處,你可能已經把這條線留下了。當你使用'.Range'來將你的語句鏈接到你之前在代碼中做的'With sh'語句時。 –