If anyone wants to know how to do getrows, simply replace:
Do While NOT rsGetAllForumCategories.EOF
with this:
arrCategory = rsCategory.GetRows()
rsCategory.Close
Set rsCategory = Nothing
That will close that recordset immediately. Then you will need to change:
Do While NOT rsCategory.EOF
strCategory = rsCategory("Cat_name")
intCatID = CInt(rsCategory("Cat_ID"))
and replace with:
For i = 0 to UBound(arrCategory, 2)
'Do While NOT rsCategory.EOF
strCategory = arrCategory(0,i)
intCatID = CInt(arrCategory(1,i))
Now, at the bottom where you see:
rsCategory.MoveNext
Loop
Replace with just:
Next
That's pretty much it, do that to all your loops and you will see big change in speed