Используя другие потоки, я перегнал сценарий VBA для сохранения каждого листа книги Excel в отдельный файл CSV. Один из моих листов содержит формулы над данными на другом листе. Ячейки с этими формулами сохраняются как REF!
s, и я не смог понять, как использовать .Value
для решения проблемы (я просто хочу экспортировать значения в CSV).
Вот ядро моего скрипта (я пропустил некоторые vars defns
и другой код настройки/очистки)
Dim oExcel
Set oExcel = CreateObject("Excel.Application")
Dim oBook
Set oBook = oExcel.Workbooks.Open(strApp+sFullPath)
oBook.Application.DisplayAlerts = FALSE
For Each objws In oBook.Sheets
objws.Copy
With objws.UsedRange
.Value = .Value
End With
sheetName = Replace(objws.Name, " ", "")
toName = strApp & sFilename & "-" & sheetName & ".csv"
objws.SaveAs toName, 6
oExcel.ActiveWorkbook.Close False
Next