Chapter VBA | VBA005 英文字的大小寫轉換 |
Section |
假設我們常常需要把英文不論是大寫(“EXCEL MARCO”)、小寫(“excel marco”)全部轉換成英文單字每一個單字第一個英文字母大寫(“Excel Marco”)。
一般我們習慣用UPPER()、LOWER()、PROPER()三個函數控制大大小寫,但若覺得很不方便,則肯定對本巨集有很大的興趣!
Option Explicit ‘現在儲存格的英文字轉換成第一個字母大寫 ‘註:Proper為工作表函數 ‘使用時需要在前面加上「WorksheetFunction.」 Sub Sample5() ‘但凡遇到錯誤,跳到「什麼也不做」標籤 On Error Goto DoNothing ‘在With和End With之間、所有的「.」為首屬性或方法 ‘也會以With之後的物件為本,應該可以使程式更精簡一些 With ActiveCell Select Case .Value ‘如果英文字大寫則換為第一個字母大寫 Case Ucase(.Value) .Value=WorksheetFunction.proper(.Value) ‘如果英文字小寫則換為第一個字母大寫 Case Lcase(.Value) .Value=WorksheetFunction.proper(.Value) End Select End With ‘什麼也不做 DoNothing: End Sub |
開啟一個空白活頁簿。
按ALT+F11鍵,開啟並切換到VBA編輯器。
點取「插入 > 模組」指令。
輸入如下圖所示的程式碼(‘後面的說明文字可視需求決定是否要輸入)
關閉VBA編輯器視窗。
當我們框選A1儲存格再執行SAMPLE5巨集,則會出現如下圖對話方塊。
單字大寫調整為第一個字母大寫.
單字小寫調整為第一個字母大寫.
由於沒寫判斷程式來了解是一個儲存格還是一個範圍要轉,故不管框一個儲存格或範圍,都是一個儲存格調整,其他儲存格原封不動。
留言列表