-
1 # 極客談科技
-
2 # 疏木職場辦公
如果點到某個單元格,單元格所在的行或者列自動改變顏色,這個效果在excel其實是不容易實現的,但是有一種比較簡單的方法可以手動讓單元格所在的行或者列改變顏色,就是利用公式建立規則。
如下圖所示,ctrl+A全選單元格後,選擇開始選項卡中的條件格式——新建規則——使用公式確定要設定格式的單元格——輸入公式=CELL("row")=ROW()——格式——填充——橙色——確定——確定。就可以在單元格所在的行顯示顏色。但是移動到其他單元格後,需要按F9鍵重新整理公式才能顯示顏色。剛才輸入的公式是什麼意思呢?其實就是表示當前單元格返回的活動行等於單元格所在的行號。
同樣,我們也可以設定某一個單元格所在的行和列顏色同時發生變化。在上面的新建規則中的公式框中輸入公式=OR(CELL("row")=ROW(),CELL("col")=COLUMN())即可。動圖如下所示:
這就是本文介紹的單元格所在行列顏色發生變化的方法,趕快試一下吧。
-
3 # 小嘟嘟熊
如果點到某個單元格,自動變動單元格顏色,這個用vba好實現,本身只要3行程式碼就能解決的問題,下面已經有人給出了答案,但是卻不能儲存底色(背景色?),因為他有一行程式碼是初始化了單元格的顏色【rows().interior.colorindex=0】,這句程式碼的意思是恢復了所有單元格預設顏色,為了這個問題,我親自寫了一段程式碼,符合你的要求,底色不變。
Dim tRow As Long
Dim c_color(1 To 256)
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If tRow = 0 Then
SaveColorArray c_color, Target
Rows(Target.Row).Interior.ColorIndex = 3
Else
SetColor c_color, tRow
SaveColorArray c_color, Target
Rows(Target.Row).Interior.ColorIndex = 3
End If
tRow = Target.Row
End Sub
Private Sub SaveColorArray(ByRef cor(), Target As Range)
Dim i As Integer
For i = 1 To UBound(cor)
cor(i) = Cells(Target.Row, i).Interior.ColorIndex "color
Next i
End Sub
Private Sub SetColor(cor(), Row As Long)
For i = 1 To UBound(cor)
Cells(Row, i).Interior.ColorIndex = cor(i) "color
Next i
End Sub
我們設想一下,當我選擇單元格的時候,就需要恢復上一格的顏色,在把當前單元格的顏色資料儲存到臨時變數中,然後在修改單元格的顏色,如何判斷上一格的行號,用一個變數來錯,首次選擇,這個行號變數是0,我們只需要儲存顏色和修改顏色,並把當前行號儲存,當第二次選中格子的時候,我們就把儲存的顏色根據行號恢復,再記錄當前的顏色,行號,這樣就完成了。
喜歡我的回答的朋友請多多關照!
-
4 # 永中軟體
Excel中滑鼠單機某個單元格,單元格所在行發生顏色變化的方法根據我的瞭解,一共有兩種方式,第一種是藉助VBA程式碼,第二種是藉助條件格式。下面我就這兩種方式和大家分享下具體的流程。
VBA程式碼使用VBA程式碼的話,首先對於Excel的版本要求比較高,另外如果是對程式碼不熟悉的小白,可能會出現難以理解,後期難以靈活運用:
1,選中sheet,右鍵選擇【檢視程式碼】;
2,在彈出的程式碼視窗中輸入以下欄位:Private Sub Worksheet_SelectionChange(ByVal Target As Range)
With Target
.Parent.Cells.Interior.ColorIndex = xlNone
.EntireRow.Interior.Color = vbGreen
.Interior.Color = vbWhite
End With
End Sub
3,關閉程式碼視窗,檢視效果,此時滑鼠選中後,所在行會變成綠色。
條件格式這個比較利於理解,平時用的比較多,流程比較簡單,具體流程如下:1,使用【Ctrl+A】組合鍵,全選單元格;
2,選擇【開始】—【條件格式】—【新建規則】;
此時選中單元格時,行列會變成綠色。
拓展應用——選中後所在行列發生變化上面兩種方式都能另所在行發生變化,所有需要單元格所在行列變化,也可以藉助VBA以及條件格式。
1,VBA程式碼的話只需要增加列,在設定行顏色後的程式碼串新增以下欄位:
.EntireColumn.Interior.Color = vbCyan;
設定完後列也會隨著選中發生顏色變化,當然我設定的顏色也是隨機的,大家可以根據自己的需求更換顏色。
2,條件格式中也是如此,只需要將公式欄中的公式更改為下面的公式即可:
=(CELL("row")=ROW())+(CELL("col")=COLUMN());
這樣設定後,行列顏色也會隨之變化。
3,選中行和列都發生變化還有一種特別方便的方式,是利用Office自帶的查閱條功能,選擇【檢視】—【查閱條】,然後選擇顏色即可。
回覆列表
“網路極客”,全新視角、全新思路,同你遨遊神奇的網路世界。
辦公制表利器Excel,又到了解決Excel疑難小問題的時間了。
當Excel表格資料很多的時候,往往我們移動滑鼠,無法第一時間查詢到滑鼠位置。
有什麼好的方法能夠解決該問題呢?
今天,我們要學習的是在Excel中,設定滑鼠點到某個單元格,單元格所在行顏色發生改變。
設定步驟設定前
設定後
實施步驟
1.在當前工作薄上,右擊“檢視程式碼”;
或者透過快捷鍵“Alt+F11”進入程式碼區。
2.在程式碼區輸入以下程式碼“
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Rows().Interior.ColorIndex = 0
x = ActiveCell.Row
Rows(x).Interior.ColorIndex = 3
End Sub
”其中3代表顏色,可以根據不同需求進行更改
3.關閉程式碼輸入視窗,就可以看到最終結果;