Sub Sample()
[A1:A20] = [INDEX(UPPER(A1:A20),)]
End Sub
嗨,對於Siddharth Rout提供的上述代碼,是否有可能將20更改爲變量,如工作表中的最後一行?Excel到大寫VBA沒有循環
非常感謝提前。
Sub Sample()
[A1:A20] = [INDEX(UPPER(A1:A20),)]
End Sub
嗨,對於Siddharth Rout提供的上述代碼,是否有可能將20更改爲變量,如工作表中的最後一行?Excel到大寫VBA沒有循環
非常感謝提前。
試試這個:
Sub UpperCase()
Dim TargetRng As Range, LastRow As Long
LastRow = Sheet1.Range("A" & Rows.Count).End(xlUp).Row
Set TargetRng = Sheet1.Range("A1:A" & LastRow)
TargetRng = Evaluate("INDEX(UPPER(" & TargetRng.Address & "),)")
End Sub
[]
只是爲Evaluate
簡寫。使用整個單詞沒有任何處罰,並且可以與VBA一起使用。剛剛嘗試過,它的工作原理。
讓我們知道這是否有幫助。
作品。謝謝! – user3249357
唯一的辦法是將可能的最大數量的行。對於Excel 2007會是1048576
沒有這個技術,我不認爲。 –
對於[A1:A1048576] = [INDEX(UPPER(A1:A1048576))]' – pnuts
I second @pnuts建議,在編碼方面並沒有太大的性能損失。但是,如果您的目標是特定範圍,請嘗試我的答案。這與Sid所做的一樣,他只是通過'Evaluate'的'[]'快捷鍵進行操作。 :) – Manhattan