VBA入门到进阶常用知识代码总结24

第24集 数组与单元格格式
109、 利用数组批量设置单元格格式
数组除了数字类型外,当然没有颜色、字体等格式,但是别忘了range对象可以表示多个连续或不连续的单元格区域。
利用上述特点,我们就是要数组构造单元格地址串,然后批量对单元格进行格式设置。
注意,单元格地址串不能>255,所以如果单元格操作过多,我们还需要分次分批设置单元格格式。
Sub 数组方法3()
Dim arr, t
Dim x As Integer, x1 As Integer
Dim sr As String, sr1 As String
Range(“a:d”).Interior.ColorIndex = xlNone
t = Timer
arr = Range(“d2:d” & Range(“a65536”).End(xlUp).Row)
For x = 1 To UBound(arr)
If x = UBound(arr) Then Application.Intersect(Range(“a:d”), Range(Left(sr, Len(sr) - 1))).Interior.ColorIndex = 3
If arr(x, 1) > 500 Then
sr1 = sr
x1 = x + 1
Do
x = x + 1
Loop Until arr(x, 1) <= 500

  sr = sr & x1 & ":" & x & ","
  If Len(sr) > 255 Then
    sr = sr1
    x = x1 - 1
    Application.Intersect(Range("a:d"), Range(Left(sr, Len(sr) - 1))).Interior.ColorIndex = 3
    sr = ""
  End If
  x = x - 1

End If
Next x
MsgBox Timer - t
End Sub

发布了47 篇原创文章 · 获赞 0 · 访问量 226

猜你喜欢

转载自blog.csdn.net/tiansdk320/article/details/104351258