I think all this stuff needs to go
inside the For..Next loop:
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colInstalledPrinters = objWMIService.ExecQuery("Select * from Win32_Printer",,48)
Set colInstalledDrivers = objWMIService.ExecQuery("Select * from Win32_PrinterDriver",,48)
Set colItems = objWMIService.ExecQuery("Select * from Win32_ComputerSystem",,48)
?