我有以下问题: 为了将工作表保存在.txt文件中,我写了这个子:
Sub SaveFile()
Dim ans As Long
Dim sSaveAsFilePath As String
Dim VPname As String
VPname = Worksheets(3).Cells(2, 1)
On Error GoTo ErrHandler:
sSaveAsFilePath = ActiveWorkbook.Path & "\" & VPname & ".txt"
If Dir(sSaveAsFilePath) <> "" Then
ans = MsgBox("Datei " & sSaveAsFilePath & " existiert bereits. Überschreiben?", vbYesNo + vbExclamation)
If ans <> vbYes Then
Exit Sub
Else
Kill sSaveAsFilePath
End If
End If
Worksheets(3).Copy '//Copy sheet 3 to new workbook
ActiveWorkbook.SaveAs sSaveAsFilePath, xlTextWindows '//Save as text (tab delimited) file
If ActiveWorkbook.name <> ThisWorkbook.name Then '//Double sure we don't close this workbook
ActiveWorkbook.Close False
End If
MsgBox ("Worksheet wurde erfolgreich als txt-Datei gespeichert!")
My_Exit:
Exit Sub
ErrHandler:
MsgBox Err.Description
Resume My_Exit
End Sub
在此工作表中,具有文本内容的单元格必须带引号(例如“example”)。当我打开.txt文件时,所有这些都有三个引号而不是一个(“”“示例”“”)。 你知道怎么解决这个问题吗? 非常感谢:)
答案 0 :(得分:1)
欢迎使用stackoverflow!提出一个可由其他人复制的小问题非常有用 - 请在此处阅读更多内容 - https://stackoverflow.com/help/mcve因此,您也可以轻松搜索。
在您的情况下,最小且可验证的示例如下:
Option Explicit
Public Sub TestMe()
ActiveWorkbook.SaveAs ThisWorkbook.Path & "\new1.txt", _
FileFormat:=xlTextWindows
End Sub
然后,如果你使用搜索引擎,你会发现它已经有了一些答案:
Saving a Excel File into .txt format without quotes
:)