使用其他线程,我提取了一个VBA脚本,将Excel工作簿中的每个工作表保存到单独的CSV文件中。我的一张纸包含另一张纸上的数据公式。具有这些公式的单元格保存为REF!
s,我无法弄清楚如何使用.Value
来解决问题(我只想将值导出为CSV)。 / p>
这是我脚本的核心(我省略了一些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
答案 0 :(得分:1)
您需要在复制之前将其更改为值
With objws.UsedRange
.Value = .Value
End With
objws.Copy
然后,您可以在不保存的情况下关闭源工作簿。