VBA|使用Range對象02:獲取單元格信息
通過不同的方式獲取對Excel工作表單元格區域的引用後,在VBA中引用這些對象即可獲取單元格區域的各種信息。
目錄
1 用Address屬性獲取單元格地址
2 獲取區域的行列信息
3 用HasFormula屬性統計區域中公式數量
4 追蹤公式單元格
5 用ColorIndex屬性按顏色統計單元格數量
1 用Address屬性獲取單元格地址
Sub 當前單元格地址()
Dim rng1 As Range
Dim str1 As String, strTitle As String
Set rng1 = ActiveCell
strTitle = "當前單元格地址"
str1 = "絕對地址:" & rng1.Address & vbCrLf
str1 = str1 & "行的絕對地址:" & rng1.Address(RowAbsolute:=False) & vbCrLf
str1 = str1 & "列的絕對地址:" & rng1.Address(ColumnAbsolute:=False) & vbCrLf
str1 = str1 & "以R1C1形式顯示:" & rng1.Address(ReferenceStyle:=xlR1C1) & vbCrLf
str1 = str1 & "相對地址:" & rng1.Address(False, False)
MsgBox prompt:=str1, Title:=strTitle
End Sub
2 獲取區域的行列信息
Sub 當前區域信息()
Dim rng1 As Range, str1 As String
Set rng1 = ActiveCell.CurrentRegion
str1 = "當前區域信息:" & vbNewLine
str1 = str1 & "單元格數量:" & rng1.Cells.Count & vbNewLine
str1 = str1 & "行數:" & rng1.Rows.Count & vbNewLine
str1 = str1 & "列數:" & rng1.Columns.Count & vbNewLine
str1 = str1 & "表頭行數:" & rng1.ListHeaderRows
MsgBox str1, vbOKOnly, "當前區域信息"
Set rng1 = Nothing
End Sub
3 用HasFormula屬性統計區域中公式數量
Sub 當前區域公式數量()
Dim c1 As Range, rng1 As Range
Dim i As Integer
Set rng1 = ActiveCell.CurrentRegion
For Each c1 In rng1.Cells
If c1.HasFormula Then
i = i + 1
End If
Next
If i > 0 Then
MsgBox "當前單元格所在區域共有 " & i & " 個公式。"
Else
MsgBox "當前單元格所在區域沒有公式。"
End If
End Sub
4 追蹤公式單元格
主要反映的是公式所在單元格與公式引用單元格的關係。
Sub 追蹤引用單元格()
ActiveCell.ShowPrecedents
End Sub
Sub 追蹤從屬單元格()
ActiveCell.ShowDependents
End Sub
上面過程執行完成後,如果存在引用或從屬關係,則會在單元格之間出現一條藍線。
5 用ColorIndex屬性按顏色統計單元格數量Sub 按顏色統計單元格()
Dim rng As Range, rng1 As Range
Dim i As Integer, Arr(1 To 56) As Integer, k As Integer
Set rng = ActiveSheet.UsedRange "獲取使用區域
For Each rng1 In rng "循環處理區域中的每個單元格
k = rng1.Interior.ColorIndex "獲取填充色
If k <> xlColorIndexNone Then "具有底色
Arr(k) = Arr(k) + 1 "對應顏色數組中進行累加
End If
Next
i = 8 "統計單元格顯示的位置
For k = 1 To 56
If Arr(k) <> 0 Then
Cells(i, 1).Interior.ColorIndex = k
Cells(i, 2) = Arr(k)
i = i + 1
End If
Next
End Sub
-End-
你的讚賞是我堅持原創的動力
讚賞共 0 人讚賞
推薦閱讀:
※沒靠山,只靠自己也能獲取成功的星座星
※走近你,本想獲取一縷陽光
※師說 | 張明楷:非法獲取虛擬財產的行為性質(下)
※快速成交話術與技巧:三招獲取客戶內在需求,打破溝通障礙!
※一頓飯獲取全面營養的秘笈大公開!幫自己和家人改善健康就從吃開始!