EXCEL - The Complete Guide To Using Arrays in Excel VBA - Excel Macro Mastery
EXCEL - The Complete Guide To Using Arrays in Excel VBA - Excel Macro Mastery
com/excel-vba-array/
arr(1) = 22 arr(1) = 22
LBound(arr) LBound(arr)
Ubound(arr) Ubound(arr)
Next i Next i
Or Or
For i = LBound(arr,1) To For i = LBound(arr,1) To UBound(arr,1)
UBound(arr,1) Next i
Next i
UBound(arr,2) Next i
Next j
Next i
With ThisWorkbook.Worksheets("Sheet1")
End With
End Sub
With ThisWorkbook.Worksheets("Sheet1")
End With
End Sub
' Variable
Dim Student As Integer
Dim Country As String
' Array
Dim Students(1 To 3) As Integer
Dim Countries(1 To 3) As String
' Create array with locations 2,3,4 ' This is rarely used
Dim arrMarks3(2 To 4) As Long
End Sub
' Set the size of the array when you are ready
ReDim arrMarks(0 To 5)
End Sub
Need Help Using Arrays? Click here to get your FREE Cheat Sheet
(https://excelmacromastery.leadpages.co/leadbox
/143676f73f72a2%3A106f25298346dc/5655869022797824/)
End Sub
Dim s As String
s = "Red,Yellow,Green,Blue"
End Sub
' Print out the values - there are all now zero
Debug.Print "Location", "Value"
For i = LBound(arrMarks) To UBound(arrMarks)
Debug.Print i, arrMarks(i)
Next i
End Sub
End Sub
Sub UsingRedim()
End Sub
Sub UsingRedimPreserve()
End Sub
arr(lTempLow) = arr(lTempHi)
arr(lTempHi) = vTemp
End If
Loop
End Sub
Sub TestSort()
End Sub
End Sub
End Function
End Sub
End Sub
End Sub
Dim i As Long
For i = LBound(StudentMarks) To UBound(StudentMarks)
' Update marks here
StudentMarks(i, 1) = StudentMarks(i, 1) * 2
'...
Next i
End Sub
Sub UsingCellsToUpdate()
Dim c As Variant
For Each c In Range("A1:Z20000")
c.Value = ' Update values here
Next c
End Sub
Need Help Using Arrays? Click here to get your FREE Cheat Sheet
(https://excelmacromastery.leadpages.co/leadbox
/145f1cd73f72a2%3A106f25298346dc/5669544198668288/)
Sub JaggedArray()
ReDim Class(0 To 2)
' Set the different sizes
ReDim Students1(0 To 15)
ReDim Students2(0 To 6)
ReDim Students3(0 To 12)
Class(0) = Students1
Class(1) = Students2
Class(2) = Students3
End Sub
Sub Test()
' Call the Display function with a range argument
Display ActiveSheet.Range("A1:D1")
End Sub
End Sub
Dim rg As Range
Set rg = Sheet2.Range("a1:f20")
With Sheet2
Debug.Print WorksheetFunction.SumIf(rg, "John"
End With
Dim c As Variant
For Each c In Sheet1.Range("A1:A10")
' DOES NOT change the value
c = 6
' CHANGES the value
c.Value = 6
Next c
Sub SortArray()
Sheet1.Range("D1:D20").Value = arr
End Sub
Dim rg As Range
Set rg = Sheet1.Range("A1:E5")
Sub MakeBold()
End Sub
Dim rg As Range
Set rg = Sheet1.Range("D5:e9").SpecialCells(xlCellTypeVi
Dim i As Long
For i = LBound(x) To UBound(x)
If x(i) >= y Then
bBigger = False
Exit For
End If
Next i
Dim i As Long
For i = 1 To 5
Next i
Sub Compare()
Dim i As Long
For i = 1 To 100
' Compare cells
If sh1.Range("A" & i) = sh2.Range("A" & i)
' add code here to write value to details
End If
Next
End Sub
Sub CountNumbers()
End Sub
End Sub