【发布时间】:2020-03-19 19:27:00
【问题描述】:
我想使用从extendoffice.com修改的以下代码执行标题任务(谢谢)。
Sub export_data_to_CSV()
Dim Rng As Range
Dim WorkRng As Range
Dim xFile As Variant
Dim xFileString As String
Dim LR As Long
LR = Application.WorksheetFunction.CountA(Worksheets("MAIN").Range("A1:A50001"))
Set WorkRng = Application.Selection
Set WorkRng = Worksheets("MAIN").Range("A2:J" & LR)
Application.ActiveSheet.Copy
Application.ActiveSheet.Cells.Clear
WorkRng.Copy Application.ActiveSheet.Range("A1")
Set xFile = CreateObject("Scripting.FileSystemObject")
xFileString = Application.GetSaveAsFilename("", filefilter:="Comma Separated Text (*.CSV), *.CSV")
Application.ActiveWorkbook.SaveAs Filename:=xFileString, FileFormat:=xlCSV, CreateBackup:=False
End Sub
代码工作正常,但是,它将所有公式甚至我的按钮都保存到目标文件中。如果我只想将值保存到目标 CSV 文件,我应该如何处理代码?
【问题讨论】:
-
CSV 不能有公式或按钮,你的 csv 文件怎么会有它们?
-
哎呀。此代码以打开的目标文件结束。在我关闭并重新打开它后,该文件成为一个真正的 CSV 文件,没有任何公式和按钮。如果我想用代码立即关闭目标文件,我应该添加哪些行?
-
ActiveWorkbook.Close SaveChanges:=False?虽然我不会在这里与ActiveWorkbook合作。 -
任务完成。谢谢大本。