使用 Microsoft 登入
登入或建立帳戶。
您好:
選取其他帳戶。
您有多個帳戶
選擇您要用來登入的帳戶。

如需本文的 Microsoft Excel 2000 版本,請參閱
213649

如需本文的 Microsoft Excel 98 及更早版本,請參閱
141094

結論

雖然 Microsoft Excel 具備變更文字大小寫的功能,不過您有時候可能會想要以程式設計方式來變更文字的大小寫。

本文包含三個 Microsoft Visual Basic for Applications 巨集 (Sub 程序) 範例,您可以使用這些巨集將文字字串的字母變更為全部大寫、全部小寫或字首大寫 (每個字的第一個字母大寫)。這些動作類似於 Excel 函數 =UPPER()、=LOWER() 及 =PROPER()。

其他相關資訊

Microsoft 僅提供示範性的程式設計範例,不做任何明示或默示的保證。其中包括 (但不限於) 其適售性與適合某特定用途之默示擔保。本文將假設您已相當熟悉示範所使用的程式設計語言,以及用於建立和偵錯程序的工具。Microsoft 技術支援工程師可以協助說明特定程序的功能,但不會修改這些範例以提供附加功能或建構程序來滿足您的特定需求。

將範圍內所有文字都變更為大寫字母的巨集

Sub Uppercase()
' Loop to cycle through each cell in the specified range.
For Each x In Range("A1:A5")
' Change the text in the range to uppercase letters.
x.Value = UCase(x.value)
Next
End Sub

將範圍內所有文字都變更為小寫字母的巨集

Sub Lowercase()
' Loop to cycle through each cell in the specified range.
For Each x In Range("B1:B5")
x.Value = LCase(x.Value)
Next
End Sub

將資料格範圍內所有文字都變更為字首大寫字母的巨集

Sub Proper_Case()
' Loop to cycle through each cell in the specified range.
For Each x In Range("C1:C5")
' There is not a Proper function in Visual Basic for Applications.
' So, you must use the worksheet function in the following form:
x.Value = Application.Proper(x.Value)
Next
End Sub

測試範例巨集

若要測試範例巨集,請依照下列步驟執行:

  1. 在包含巨集的同一個活頁簿中,將下列範例資料輸入到新的工作表中:
    A1:toM B1:toM C1:toM
    A2:sUe B2:sUe C2:sUe
    A3:joe SMITH B3:joe SMITH C3:joe SMITH
    A4:mary B4:mary C4:mary
    A5:LORI B5:LORI C5:LORI
    注意:此範例資料包含以各種大小寫組合格式化的文字,您可以用來確認每一個巨集的功能。

  2. 執行每一個巨集。

巨集中 (For each x in ... 這一行中) 指定之範圍內的文字,都會適當地格式化為全部大寫、全部小寫或字首大寫。

参考

如需有關如何使用工作表函數來變更文字大小寫的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:

263580How to change the case of text in Excel

如需有關如何取得 Visual Basic for Applications 說明的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:

305326List of programming resources for Visual Basic for Applications

需要更多協助嗎?

想要其他選項嗎?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。

這項資訊有幫助嗎?

您對語言品質的滿意度如何?
以下何者是您會在意的事項?
按下 [提交] 後,您的意見反應將用來改善 Microsoft 產品與服務。 您的 IT 管理員將能夠收集這些資料。 隱私權聲明。

感謝您的意見反應!

×