我希望有人能在這里幫助我。我正在嘗試遍歷作業簿中的每個作業表,并將 G 列中的文本更改為大寫,而標題列保持不變。我覺得我是那里的一部分,但我一定是在俯瞰某些東西。
這是我嘗試過的方法:
Sub capitalize_columns()
Dim wb as ThisWorkbook
Dim ws as Worksheet
set wb = ThisWorkbook
For Each ws in wb.worksheets
With ws
Dim last_row as Long
last row = ws.Cells(Rows.Count, 1).End(xlUp).Row
Dim capital_range As Range
Set capital_range = ws.Range("G2:G" & last_row)
capital_range.Value = capital_range.Parent.Evaluate("Index(UPPER(" & name_range.Address & "),)")
End With
Next ws
End Sub
該腳本在 excel 中運行,但它不會產生我想要的結果,即大寫 G 列中的所有內容,但標題除外。
有人可以告訴我我在這里缺少什么嗎?我不知所措。
非常感謝!
uj5u.com熱心網友回復:
我認為您使大寫部分過于復雜。你所需要的UCase()就像這里顯示的一樣:
Sub capitalize_columns()
Dim ws As Worksheet
Dim row As Long
Dim last_row As Long
For Each ws In ThisWorkbook.Worksheets
With ws
last_row = .Cells(.Rows.Count, 1).End(xlUp).Row ' uses column A to find last row
For row = 1 To last_row
.Range("G" & row) = UCase$(.Range("G" & row))
Next
End With
Next ws
End Sub
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/377332.html
