I'm trying to create 3 sublists from the main list itemlist, but I can't find any way to achieve that. I've found a solution in python when I check out this link.
Sub CreateSubList()
    Dim itemlist As Variant, itemNum As Variant
    Dim oSublist As Variant
    
    itemlist = Array("1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11")
    
    'here I was expecting to create a variable holding sublist, as in oSublist which contains Array("1", "2", "3", "4")
    'Array("5", "6", "7", "8") and Array("9", "10", "11") in each loop
    'and finally iterate over the list in chunk to print the result
    
    For Each itemNum In oSublist
        Debug.Print itemNum
    Next itemNum
End Sub
To be specific, I'm trying to mimic this in vba:
itemlist = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11"]
for i in range(0, len(itemlist), 4):
    chunk = itemlist[i:i + 4]
    
    for n in chunk:
        print(n)
It seems I'm very close to solve the issue.
Sub CreateSubList()
    Dim itemlist As Variant, itemNum As Variant
    Dim oSublist As Variant, iCol As Collection
    Dim inum As Variant
    
    Set iCol = New Collection
    itemlist = Array("1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11")
    For Each inum In itemlist
        iCol.Add inum
        
        If iCol.Count >= 3 Then
            For Each itemNum In iCol
                Debug.Print itemNum
            Next itemNum
            
            Debug.Print "---------------------"
            Set iCol = Nothing
            Set iCol = New Collection
        End If
    Next inum
End Sub
Output I'm getting:
1
2
3
---------------------
4
5
6
---------------------
7
8
9
---------------------
However, what is still unresolved is I can't capture the two items, as in 10 and 11 conditionally from the itemlist.
 
     
     
     
    