Boa tarde pessoal, atualmente tenho um script para fazer inventário das máquinas, porém toda vez ele cria um excel, queria alterar isso para ele abrir um excel e ir adicionando os valores linha por linha sem substituir a antiga, segue abaixo as credenciais:
on Error Resume Next
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
' Create Excel Spreadsheet
Set app = CreateObject("Excel.Application")
Set wb = app.Workbooks.Add
app.Visible = true
wb.Activate
Set ws = wb.Worksheets(1)
ws.Cells(1,1).Value = "Computername"
ws.Columns(1).ColumnWidth = 20
ws.Cells(1,2).Value = "Username"
ws.Columns(2).ColumnWidth = 30
ws.Cells(1,3).Value = "Manufacturer"
ws.Columns(3).ColumnWidth = 20
ws.Cells(1,4).Value = "Model"
ws.Columns(4).ColumnWidth = 20
ws.Cells(1,5).Value = "Serial Number"
ws.Columns(5).ColumnWidth = 30
ws.Cells(1,6).Value = "CPU"
ws.Columns(6).ColumnWidth = 30
ws.Cells(1,7).Value = "CPU Speed"
ws.Columns(7).ColumnWidth = 10
ws.Cells(1,8).Value = "Operating System"
ws.Columns(8).ColumnWidth = 40
ws.Cells(1,9).Value = "Service Pack"
ws.Columns(9).ColumnWidth = 20
ws.Cells(1,10).Value = "Total Memory"
ws.Columns(10).ColumnWidth = 20
ws.Cells(1,11).Value = "Audit Date"
ws.Columns(11).ColumnWidth = 20
'
' Get Computer System Details
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_ComputerSystem",,48)
For Each objItem In colItems
ws.Cells(2,1).Value = "" & objItem.Caption
ws.Cells(2,2).Value = "" & objItem.UserName
ws.Cells(2,3).Value = "" & objItem.Manufacturer
ws.Cells(2,4).Value = "" & objItem.Model
Next
Set objWMIService = Null
Set colItems = Null
'
'Get BIOS Details
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_BIOS",,48)
For Each objItem In colItems
ws.Cells(2,5).Value = "" & objItem.SerialNumber
Next
Set objWMIService = Null
Set colItems = Null
'
' Get CPU Details
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_Processor",,48)
For Each objItem In colItems
ws.Cells(2,6).Value = "" & objItem.Name
ws.Cells(2,7).Value = "" & objItem.CurrentClockSpeed
Next
Set objWMIService = Null
Set colItems = Null
'
' Get OS Details
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_OperatingSystem",,48)
For Each objItem In colItems
ws.Cells(2,8).Value = "" & objItem.Caption
ws.Cells(2,9).Value = "" & objItem.CSDVersion
ws.Cells(2,10).Value = "" & FormatNumber(objItem.TotalVisibleMemorySize/1024,0)
Next
Set objWMIService = Null
Set colItems = Null
'
' Get & Writeout current Date
ws.Cells(2,11).value = "" & Day(Now) & "-" & Month(Now) & "-" & Year(Now)
'Save
app.displayalerts=false
strExcelPath = strCurDir & "staff_PC_inventory.xlsx"
app.displayalerts=true
ws.SaveAs "R:\Inventário.xlsx"
wb.Saved = True
app.Quit