Hello,大家好,今天跟大家分享我們如何實現實現點擊一個單元格,自動爲數據區域的整行填充一個顏色,效果如下圖,當我們點擊一個單元格的時候們就會爲整行填充一個顏色,這個的操作跟我們之前分享的聚光燈效果十分的相似,他的操作也不難,在這裏跟大家分享2中方法,下面就讓我們來看一下他是如何操作的

一、使用vba

對於這種自動填充顏色的功能,最簡單有效的方法就是使用vba來實現這樣的操作,首先我們點擊工作表的名稱然後點擊鼠標右鍵選擇查看代碼,將如如下代碼粘貼進對話框中,然後直接將其關閉,這樣的話當我們回到excel中就會發現,當我們點擊某一個單元格的時候就會爲整行填充紅色

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Cells.Interior.TintAndShade = 0

r = ActiveCell.Row

Rows(r & ":" & r).Interior.Color = vbRed

End Sub

二、使用條件格式

使用條件格式實現這樣的效果,我們需要用到的cell函數,cell函數是宏表函數,所謂宏表函數是vba的前身,現在已經被vba所取代,不過我們仍然可以使用,但是隻能通過定義名稱來調用函數,不能直接使用函數

Cell函數:它可以返回所引用單元格的格式、位置或內容等信息

第一參數:info_type,指定所需的單元格信息的類型。

第二參數:需要其有關信息的單元格,如果省略 reference,則在 info_type 中指定的信息將返回給最後更改的單元格

Cell函數的第一參數的信息類型很多在這裏我們僅僅用到他的 “row”這一個信息類型,它的作用是自動獲取鼠標點擊的單元格的行號

首先我們點擊想要設置的數據區域,然後找到條件格式,選擇新建規則,然後選擇使用公式確定格式,輸入公式= CELL("row")=ROW(),然後點擊格斯找到填充選擇一個自己喜歡的然後點擊確定,這樣的話我們就爲鼠標點擊的整行填充了顏色

這樣做有一個缺點就是我們需要雙擊單元格然後移動鼠標才能爲整填充顏色,這是因爲宏表函數不能實現自動刷新導致的,我們可以使用vba來實現數據的自動刷新,首先我們點擊表格的名稱,然後點擊鼠標右鍵選擇選擇查看代碼在代碼輸入窗口中將通用更改爲worksheet,然後加上一個單詞:calculate然後關閉這個界面,這個時候就能實現自動刷新我們點擊某一個單元格就能實現自動填充顏色的效果

最後需要注意的是我們使用這兩種方法設置自動填充顏色,需要將表格的格式另存爲xlsm的格式,因爲只有這個格式的文件才能儲存vba代碼,當我們打開文件的時候需要選擇啓用宏這樣的話代碼才能起到作用,

怎麼樣,你學會了嗎?

我是excel從零到一,關注我持續分享更多excel技巧

相關文章