如何使用 VBA 設置 Excel 文本字體顏色?

在本教程中,我們將學習如何使用Visual Basic for Applications (VBA) 根據單元格內容修改 Excel 單元格中的文本大小和样式。本教程適用於 Excel 365、2021、2019 和 2016

預備步驟

如果您是 Excel VBA 開發的新手,我建議您在閱讀本教程之前先了解一下我們的Excel VBA 宏入門

在開始編碼之前,您應該在功能區中啟用 Excel 上的開發人員選項卡,否則您將無法訪問您的 Visual Basic 編輯器。

使用 VBA 更改 Excel 單元格文本屬性

1. 定義您的電子表格

我們將首先定義一個我們將用作示例的 Excel 電子表格。隨意使用它來學習本教程。

  • 打開 Microsoft Excel 並創建一個名為Excel_Macros.xlsm的新啟用宏的 Excel 工作簿 (.xlsm)
  • 將電子表格保存在本地驅動器中。
  • Sheet1工作表中,繼續添加下表:

如何使用 VBA 設置 Excel 文本字體顏色?

2. 定義命名範圍

  • 現在,從功能區點擊公式
  • 然後點擊定義名稱
  • 定義一個命名範圍,您將在其上應用您的 VBA 代碼,如下所示,然後點擊OK

如何使用 VBA 設置 Excel 文本字體顏色?

3. 使用 Cell.Font VBA 屬性更改字體顏色和样式

  • 移動到開發人員選項卡。
  • 接下來繼續並點擊Visual Basic按鈕。
  • 在左側的Project Explorer中,突出顯示Excel_Macros.xlsm項目,然後點擊Insert並選擇Module
  • 將創建一個名為Module1的新 VBA 模塊。
  • 繼續在新創建的模塊中粘貼以下代碼:
Sub Color_Cell_Text_Condition()
    Dim MyCell As Range
    Dim StatValue As String
    Dim StatusRange As Range
    Set StatusRange = Range("Completion_Status")
    
    'loop through all cells in the range
    For Each MyCell In StatusRange
        StatValue = MyCell.Value
        'modify the cell text values as needed.
        Select Case StatValue    
            'green
            Case "Progressing"
                With MyCell.Font
                    .Color = RGB(0, 255, 0)
                    .Size = 14
                    .Bold = True
                End With
            'orange    
            Case "Pending Feedback"
                With MyCell.Font
                    .Color = RGB(255, 141, 0)
                    .Size = 14
                    .Bold = True
                End With
            'red    
            Case "Stuck"
                With MyCell.Font
                    .Color = RGB(255, 0, 0)
                    .Size = 14
                    .Bold = True
                End With
        End Select
    Next MyCell
End Sub
  • 在 Visual Basic 編輯器中點擊保存按鈕
  • 現在點擊運行,然後選擇運行子/用戶窗體(或簡單地按 F5)。
  • 移至Sheet1工作表並註意更改。您的表格條目根據其文本分配了多個顏色代碼(使用 RGB 顏色函數),我們還將文本設置為粗體並增加其大小。

如何使用 VBA 設置 Excel 文本字體顏色?

  • 如果您尚未保存代碼,請點擊保存按鈕(或 Ctrl+S),然後保存您的工作簿。

訪問您的 VBA 宏

  • 請注意,您的代碼始終可供您從“視圖”選項卡中的“宏”命令運行(或者在“開發人員 | 宏”中)

如何使用 VBA 設置 Excel 文本字體顏色?

獎勵:細胞風格

Excel 提供了建立儲存格「樣式」的功能。樣式可以在主頁功能區>樣式中找到:

Excel VBA字體樣式

樣式可讓您儲存所需的儲存格格式。然後將該樣式指派給新儲存格,所有儲存格格式都會立即套用,包括字體大小、單元格顏色、單元格保護狀態以及單元格格式設定選單中提供的任何其他內容:

Excel 儲存格格式設定選單

就我個人而言,對於我處理的許多模型,我通常會建立一個「輸入」儲存格樣式:

Range("A1").Style = "輸入"

透過使用樣式,您還可以輕鬆識別工作表上的儲存格類型。以下範例將遍歷工作表中的所有單元格,並將 Style =“Input”的任何單元格更改為“InputLocked”:

For Each Cell In ActiveSheet.Cells
    If Cell.Style = "輸入" Then
        Cell.Style = "InputLocked"
    End If
Next Cell

3 Comments

  1. 平靜的海 -

    使用 VBA 的時候如果遇到問題,會不會有線上論壇可以請教?

  2. 小藍 -

    分享一下,我在使用這個 VBA 方法時遇到了一點小問題,不知道是否可以幫忙?

  3. 莉莉 -

    我嘗試過這個方法,效果真的不錯!不過初學者可能需要一些範例來參考

Leave a Comment

[已更新] 如何修復 Windows 10 更新錯誤 0x80244022

[已更新] 如何修復 Windows 10 更新錯誤 0x80244022

為了解決 Windows 10 更新錯誤 0x80244022,請參考有效的解決方案,例如運行疑難解答、檢查網絡設定等。

如何在 Discord 上播放 Disney+

如何在 Discord 上播放 Disney+

唯一比觀看 Disney+ 更好的是和朋友一起觀看。通過本指南了解如何在 Discord 上流式傳輸 Disney+。

已修復:Hamachi 無法在 Windows 10 和 11 上獲取適配器配置

已修復:Hamachi 無法在 Windows 10 和 11 上獲取適配器配置

閱讀完整指南以了解如何解決 Windows 10 和 11 上的 Hamachi 無法獲取適配器配置錯誤,解決方案包括更新驅動程序、防火牆設置等

修復 REGISTRY_ERROR 藍屏錯誤 (0x00000051) 的 7 個工作解決方案

修復 REGISTRY_ERROR 藍屏錯誤 (0x00000051) 的 7 個工作解決方案

了解修復 REGISTRY_ERROR 藍屏錯誤 (0x00000051) 的有效方法,解決 Windows 系統中遇到的註冊表錯誤。

如何在 Roku 上更改音量

如何在 Roku 上更改音量

在 Roku 上調整聲音比使用遙控器向上或向下移動更多。以下是如何在 Roku 上更改音量的完整指南。

如何修復 Roblox 錯誤代碼 267 [7 簡單修復]

如何修復 Roblox 錯誤代碼 267 [7 簡單修復]

在 Roblox 中被禁止或踢出遊戲的錯誤代碼 267,按照以下簡單解決方案輕鬆解決...

[已解決] 如何解決 Rust 不斷崩潰的問題?

[已解決] 如何解決 Rust 不斷崩潰的問題?

面對 Rust 在啟動或加載時不斷崩潰,然後按照給出的修復並輕鬆停止 Rust 崩潰問題...

[已修復] 驅動程序 WudfRd 在 Windows 10 中無法加載錯誤 219

[已修復] 驅動程序 WudfRd 在 Windows 10 中無法加載錯誤 219

如果在 Windows 10 中遇到 Driver WudfRd failed to load 錯誤,事件 ID 為 219,請遵循此處給出的修復並有效解決錯誤 219。

如何修復“未知軟件異常(0xe0434352)”?

如何修復“未知軟件異常(0xe0434352)”?

發現修復此處給出的 Windows 10 和 11 上的未知軟件異常 (0xe0434352) 錯誤的可能解決方案

[已解決] Grand Theft Auto V 中的“Script Hook V 嚴重錯誤”

[已解決] Grand Theft Auto V 中的“Script Hook V 嚴重錯誤”

想知道如何修復 GTA 5 中的腳本掛鉤 V 嚴重錯誤,然後按照更新腳本掛鉤應用程序等修復,重新安裝 GTA 5 和其他