Excel VBA复制数据到txt文件-为什么要替换字符?



有一个简单的宏,复制定义的工作表上的所有数据,并将其保存为。txt格式。问题是,在保存期间,其中一列中的十进制数没有用逗号分隔,而是用点分隔。我想设法消除这种情况,但到目前为止,我所有的努力都是徒劳的。

VBA代码:

Dim myPath As String, myFile As String
myPath = ThisWorkbook.Path & ""
myFile = Application.UserName + "_SAP_árlista_betöltő_" + Format(Now(), "YYYY_MM_DD_hhmmss") & ".txt"
Dim WB As Workbook, newWB As Workbook
Set WB = ThisWorkbook
Application.ScreenUpdating = False
Set newWB = Workbooks.Add
WB.ActiveSheet.UsedRange.Copy newWB.Sheets(1).Range("A1")
With newWB
Application.DisplayAlerts = False
.SaveAs Filename:=myPath & myFile, FileFormat:=xlTextWindows
.Close True
Application.DisplayAlerts = True
End With
WB.Save
Application.ScreenUpdating = True
Range("A1:J670").Select
Selection.ClearContents
Range("A1").Select
MsgBox "Az adatok mentésre kerültek!"
End Sub

谢谢你的提示!

盖瑞

最后,我就是这样解决的。

Dim rngData As Range
Dim strData As String
Dim strTempFile As String
Set rngData = ActiveSheet.UsedRange
rngData.Copy
With CreateObject("New:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}")
.GetFromClipboard
strData = .GetText
End With
strTempFile = Application.DefaultFilePath & "" & Application.UserName + "_SAP_árlista_betöltő_" + Format(Now(), "YYYY_MM_DD_hhmmss") & ".txt"
With CreateObject("Scripting.FileSystemObject")
.CreateTextFile(strTempFile, True).Write strData
End With
End Sub

最新更新