分享成果,隨喜真能量。大家好,今日內容仍是和大家分享VBA編程中常用的簡單「積木」過程代碼,這些內容大多是取至我編寫的「VBA代碼解決方案」教程中內容。NO.168-NO.169內容是:
NO. 168:如何利用VBA代碼,求單元格區域A1:H10正數的和
NO. 169:如何利用VBA代碼,求最大值、最小值
VBA過程代碼168:如何利用VBA代碼,求單元格區域A1:H10正數的和
Sub mynz ()
Dim rng, rngs As Range
Dim d As Double
Set rngs = Range("A1:H10")
For Each rng In rngs
If rng > 0 Then d = d + rng
Next
MsgBox rngs.Address(0, 0) & "單元格正數的和為" & d
End Sub
代碼的解析說明:mynz過程利用VBA代碼在單元格區域Range("A1:H10")中進行了遍歷的操作,If rng > 0 Then d = d + rng 是指當這個單元格的值大於零時,那麼累加求和。即是求正數的和。
VBA過程代碼169:如何利用VBA代碼,求最大值、最小值
Sub mynz ()
Dim rng As Range
Dim myRng As Range
Dim k1 As Integer, k2 As Integer
Dim mymax As Double, mymin As Double
Set myRng = Sheets("50").Range("a1:f20")
For Each rng In myRng
If rng.Value = WorksheetFunction.Max(myRng) Then
rng.Interior.ColorIndex = 3
k1 = k1 + 1
mymax = rng.Value
ElseIf rng.Value = WorksheetFunction.Min(myRng) Then
rng.Interior.ColorIndex = 5
k2 = k2 + 1
mymin = rng.Value
Else
rng.Interior.ColorIndex = 0
End If
Next
MsgBox "最大值是:" & mymax & "共有 " & k1 & "個" _
& Chr(13) & "最小值是:" & mymin & "共有 " & k2 & "個"
End Sub
代碼的解析說明:mynz過程在工作表單元格區域中查找最大、最小值,並將其所在的單元格底色分別設置為紅色和藍色。代碼中遍歷單元格區域,使用工作表Max、Min函數判斷單元格數值是否是所在區域的最大、最小值,如果是,將其所在的單元格底色設置為紅色或藍色,並保存其數值和數量。最後用消息框顯示最大、最小值數值和數量。
VBA是實現自己小型辦公自動化的有效手段,我根據自己20多年的VBA實際利用經驗,現推出了四部VBA教程,這些是我多年編程經驗的記錄,也是我「積木編程」思想的體現。每一講都是較大塊的「積木」,可以獨立的完成某些或者某類的過程,有需要的朋友可以聯絡(WeChat:NZ9668)分享。利用這些可以提高自己的編程效率。其一:「VBA代碼解決方案」PDF教程,是VBA中各個知識點的講解,覆蓋了絕大多數的知識點,是初學及中級以下人員必備;其二「VBA資料庫解決方案」PDF教程,資料庫是數據處理的利器,對於中級人員應該掌握這個內容了。其三「VBA數組與字典解決方案」PDF教程,講解VBA的精華----字典,是我們打開思路,提高代碼水平的必備。其四「VBA代碼解決方案」視頻教程。目前正在錄製,「每天20分鐘,半年精進VBA」,越早參與,回饋越多。現在錄製到第二冊的95講。