Note: The other languages of the website are Google-translated. Back to English

如何在Excel中將單元格顏色設置為等於其他單元格顏色?

如果要使一種單元格顏色與另一種顏色匹配,本文中的一種方法可以為您提供幫助。

使用VBA代碼將單元格顏色設置為與另一單元格顏色相同


使用VBA代碼將單元格顏色設置為與另一單元格顏色相同

下面的VBA方法可以幫助您在Excel中將單元格顏色設置為與其他單元格顏色相同。 請執行以下操作。

1.在工作表中,您需要匹配兩個單元格的顏色,請右鍵單擊工作表選項卡,然後單擊 查看代碼 從右鍵單擊菜單中。 看截圖:

2.在開幕 Microsoft Visual Basic for Applications 窗口,您需要將VBA代碼複製並粘貼到“代碼”窗口中。

VBA代碼:設置單元格顏色等於其他單元格顏色

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Me.Range("C1").Interior.Color = Me.Range("A1").Interior.Color
End Sub

備註:在代碼中,A1是包含您將與C1匹配的填充顏色的單元格。 請根據您的需要進行更改。

然後,將單元格C1填充為與單元格A1相同的顏色,如下圖所示。

從現在開始,當更改A1中的填充顏色時,C1將自動匹配相同的顏色。


相關文章:


最佳辦公效率工具

Kutools for Excel 解決了你的大部分問題,並將你的生產力提高了 80%

  • 重用: 快速插入 複雜的公式,圖表 以及您以前使用過的任何東西; 加密單元 帶密碼 創建郵件列表 並發送電子郵件...
  • 超級公式欄 (輕鬆編輯多行文本和公式); 閱讀版式 (輕鬆讀取和編輯大量單元格); 粘貼到過濾範圍...
  • 合併單元格/行/列 不會丟失數據; 拆分單元格內容; 合併重複的行/列...防止細胞重複; 比較範圍...
  • 選擇重複或唯一 行; 選擇空白行 (所有單元格都是空的); 超級查找和模糊查找 在許多工作簿中; 隨機選擇...
  • 確切的副本 多個單元格,無需更改公式參考; 自動創建參考 到多張紙; 插入項目符號,複選框等...
  • 提取文字,添加文本,按位置刪除, 刪除空間; 創建和打印分頁小計; 在單元格內容和註釋之間轉換...
  • 超級濾鏡 (將過濾方案保存並應用於其他工作表); 高級排序 按月/週/日,頻率及更多; 特殊過濾器 用粗體,斜體...
  • 結合工作簿和工作表; 根據關鍵列合併表; 將數據分割成多個工作表; 批量轉換xls,xlsx和PDF...
  • 超過 300 項強大的功能. 支持 Office / Excel 2007-2021 和 365。支持所有語言。 在您的企業或組織中輕鬆部署。 完整功能 30 天免費試用。 60 天退款保證。
kte選項卡201905

Office選項卡為Office帶來了選項卡式界面,使您的工作更加輕鬆

  • 在Word,Excel,PowerPoint中啟用選項卡式編輯和閱讀,發布者,Access,Visio和Project。
  • 在同一窗口的新選項卡中而不是在新窗口中打開並創建多個文檔。
  • 將您的工作效率提高 50%,每天為您減少數百次鼠標點擊!
officetab底部
按評論排序
留言 (19)
還沒有評分。 成為第一位評論!
網站主持人對此評論進行了最小化
嗨,顏色被引用的單元格會根據條件格式更改顏色。 以上似乎不適用於此,並且目標單元格保持空白。 如何糾正? 謝謝
網站主持人對此評論進行了最小化
我也有同樣的問題。 適用於沒有條件格式的單元格,但不適用於那些有條件格式的單元格
網站主持人對此評論進行了最小化
如果您有 Excel 2010 或更高版本,則可以使用 DisplayFormat 函數返回有條件格式化的單元格的顏色。 見下文:

私人子工作表_SelectionChange(ByVal Target As Range)
Me.Range("C1").Interior.Color = Me.Range("A1").DisplayFormat.Interior.Color
END SUB
網站主持人對此評論進行了最小化
LP 你真是太棒了!!!!!!我嘗試了最長時間讓單元格匹配條件格式背景顏色! 你是救命恩人!!!
網站主持人對此評論進行了最小化
這可以在單元格範圍內完成還是僅針對單個單元格?
網站主持人對此評論進行了最小化
嗨,是否可以將其擴展到條件格式? 不匹配由條件格式創建的顏色,但如果匹配條件格式條件,則應用的條件格式採用特定單元格的顏色。 嘗試在甘特圖中使用它,為開始日期和結束日期之間的天數著色,但生成甘特條的條件格式應該採用包含任務的單元格的顏色(我手動設置)
網站主持人對此評論進行了最小化
嗨,請編寫一個代碼將條件格式從一列數據應用到下一列嗎?在列 A 中,我有一系列從 A1 到 A1000 的數據,包括在某些單元格中應用顏色的條件格式。 我需要將這些顏色應用於下一列 B1 到 B1000 中的值。
非常感謝。
網站主持人對此評論進行了最小化
嗨,如何在一系列單元格上應用相同的 VBA,例如:

我希望以相同的順序將範圍(C8:X8)的相同顏色一一應用於範圍(S16:AL16)(S16獲得C16的顏色,T16獲得D8的顏色...... ETC)
網站主持人對此評論進行了最小化
美好的一天,

下面的 VBA 代碼可以幫助您解決問題。 謝謝你的評論。

私人子工作表_SelectionChange(ByVal Target As Range)
將 xSRg、xDRg、xISRg、xIDRg 調暗為範圍
將 xFNum 變暗
在錯誤恢復下一頁
設置 xSRg = Range("C8:X8")
設置 xDRg = Range("S16:AL16")
對於 xFNum = 1 到 xSRg.count
設置 xISRg = xSRg.Item(xFNum)
設置 xIDRg = xDRg.Item(xFNum)
xIDRg.Interior.Color = xISRg.Interior.Color
下一個 xFNum
END SUB
網站主持人對此評論進行了最小化
Hi

我正在嘗試做類似的事情,但我有兩個電子表格(文件)。 電子表格 1 是手動更新數據的主表格,文件(電子表格 2)與電子表格 1 相同單元格中的數據相等。當我打開電子表格 2 時,我收到提示,用電子表格 1 刷新沒有問題,但如果電子表格 1 中單元格的顏色發生了變化,它在電子表格 2 中沒有更新,字體的 'strike-trough' 也沒有..請幫忙?
網站主持人對此評論進行了最小化
這是我想做的一個好的開始。 但我正在尋找更複雜的東西

我該如何調整它以適用於多行和一個範圍。 例如,我在 B 列中有一個標題列,我希望從 G 到 CS 的單元格與標題行的顏色相匹配,但只有它們中有一些東西,即字母 x。 我知道我可以編寫一個 IF 和 THEN 語句,但是如何在不為每一行編寫代碼的情況下將其應用於多個行。
網站主持人對此評論進行了最小化
嗨扎克,
抱歉不能幫你。 有關 Excel 的任何問題,請隨時在我們的論壇中發帖: https://www.extendoffice.com/forum.html.
網站主持人對此評論進行了最小化
我發現您的代碼“將單元格顏色設置為等於另一種單元格顏色”,當我在同一個工作表上使用它時它可以工作(例如從單元格 A1 到單元格 A2)。我想知道是否有辦法讓這個相同來自另一個工作表的功能(例如將單元格顏色從 sheet1!A1 複製到 sheet2!A1?您可以提供的任何幫助將不勝感激!
網站主持人對此評論進行了最小化
作為克里斯,我有興趣從另一個工作表中復制背景顏色嗎?
網站主持人對此評論進行了最小化
哇 - 這太棒了。 我希望你能幫助我根據我的需要調整你的腳本。 我需要使單元格 D10:D200 與單元格 A10:A200 的條件格式顏色相匹配 - 請你幫我解決這個問題。 單元格都在同一個工作表中。
網站主持人對此評論進行了最小化
我附上了我正在處理的文件的屏幕截圖 - 我似乎無法上傳 .xlsm 文件? 在這個文件中,我使用了這個線程中的原始 VBA,現在可以匹配 D10 中單元格 A10 的條件格式顏色。 我怎樣才能讓它在一系列細胞上工作? 我想將單元格 A10:A200 範圍的顏色轉移到 D10:D200。 有人可以幫忙嗎? A 列中有一個正在使用的下拉列表,但是一旦我們下訂單,我們需要能夠多輸入採購訂單號。 列表中的項目都設置為有條件地格式化為一種顏色(例如 ORDER OK 將單元格變為綠色,CLIENT TBC 將單元格變為黃色)但是一旦輸入 PO,顏色就會變為空白。
網站主持人對此評論進行了最小化
圖片沒有上傳 - 希望現在附上....
網站主持人對此評論進行了最小化
嗨 - 我在使用您的代碼時遇到了困難。 我正在努力完全按照你所說的去做。 使一個單元格與同一工作表上的另一個單元格顏色相同(無需任何值)。 該代碼中有什麼需要調整的嗎?
網站主持人對此評論進行了最小化
嗨,我正在嘗試更改來單元格以匹配另一個已被條件格式化的單元格。 你的代碼 
私人子工作表_SelectionChange(ByVal Target As Range)
Me.Range("C1").Interior.Color = Me.Range("A1").DisplayFormat.Interior.Color
END SUB
我適應了
私人子工作表_SelectionChange(ByVal Target As Range)
Me.Range("A2:C2").Interior.Color = Me.Range("D2").DisplayFormat.Interior.Color
END SUB

這僅適用於一行。 如何讓它在我需要的所有行中工作? 如果我在下一行重複代碼
私人子工作表_SelectionChange(ByVal Target As Range)
Me.Range("A3:C3").Interior.Color = Me.Range("D3").DisplayFormat.Interior.Color
END SUB

然後我得到一個編譯錯誤:檢測到不明確的名稱:Worksheet_SelectionChange
我嘗試使用代碼 asPrivate Sub Worksheet_SelectionChange(ByVal Target As Range)
Me.Range("A2:C10").Interior.Color = Me.Range("D2:D10").DisplayFormat.Interior.ColorEnd Sub

但是所有的行都只是填充黑色而不是所需的顏色。 我需要什麼編碼?
這裡還沒有評論
留下你的意見
以訪客身份發帖
×
評價此帖子:
0   字符
推薦地點

關注我們

版權所有©2009 - 萬維網。extendoffice.com。 | 版權所有。 供電 ExtendOffice。 |
Microsoft和Office徽標是Microsoft Corporation在美國和/或其他國家的商標或註冊商標。
受Sectigo SSL保護