题记:春节期间,情况特殊,希望大家尽可能待在家里,静下心,多学习有用的知识,多提高自己的水平和能力,这才是正道。适当节制自我的各种欲望,谁都逃不过时间的历练,谁都是命运的行者,谁都是在人生的道路上一步一趋,把生活与工作打理好,不负年华。
今日内容是和大家分享VBA编程中常用的 “积木”过程代码,这些内容大多是取至我编写的“VBA代码解决方案”教程中内容。今日分享的是NO.204-NO.204,内容是:
NO. 204:在VBA代码中选取更快的单元格操作方法
VBA过程代码204:在VBA代码中选取更快的单元格操作方法
Sub mynz ()
Dim arr As Variant
Dim i As Long
Dim t As Date
Dim t1 As String
Dim t2 As String
With Range("A1:A20000")
arr = .Value
Sheets("87").Cells(3, 2) = ""
Sheets("87").Cells(4, 2) = ""
t = Timer
For i = 20000 To 1 Step -1
If Sheets("87").Cells(i, 1) = "VBA" Then
Sheets("87").Cells(i, 1).EntireRow.Delete
End If
Next
t1 = Timer - t
Sheets("87").Cells(3, 2) = Format(t1, "0.00000")
.Value = arr
t = Timer
.Replace "VBA", ""
.SpecialCells(4).EntireRow.Delete
End With
t2 = Timer - t
Sheets("87").Cells(4, 2) = Format(t2, "0.00000")
Range("E1:E20000").Value = arr
Set arr = Nothing
MsgBox "第一次运行时间:" & Format(t1, "0.00000") & "秒" _
& Chr(13) & "第二次运行时间:" & Format(t2, "0.00000") & "秒"
End Sub
代码解析:MyNZ过程分别使用VBA代码和使用Replace、SpecialCells方法删除工作表A列内容为“VBA”的单元格所在的行,最后使用消息显示运行时间。代码采用遍历单元格的方法删除内容为“VBA”的单元格所在的行。使用Replace方法将内容为“VBA”的单元格替换成空白单元格。使用SpecialCells方法定位到空白单元格后一次性删除其所在的行。
VBA是实现自己小型办公自动化的有效手段,我根据自己20多年的VBA实际利用经验,现推出了四部VBA学习教程,这些是我多年编程经验的记录,也是我“积木编程”思想的体现。每一讲都是一块“积木”,可以独立的完成某些或者某类的过程。利用这些可以大大提高自己的编程效率。
第一套:“VBA代码解决方案”是PDF教程,是VBA中各个知识点的讲解,覆盖了绝大多数的知识点,是初学及中级以下人员必备;
第二套:“VBA数据库解决方案”是PDF教程,数据库是数据处理的利器,对于中级人员应该掌握这个内容了。
第三套:“VBA数组与字典解决方案”是PDF教程,讲解VBA的精华----字典,是我们打开思路,提高代码水平的必备。
第四套:“VBA代码解决方案”视频教程。目前正在录制,“每天20分钟,精进VBA”,越早参与,回馈越多。现在录制到第三册的124讲,以上各教程的代码都是经过实测,可以拿来即用。
春节期间,情况特殊,大家尽可能待在家里,多学习有用的知识,多提高自己。