1
我有一个代码可以创建特定格式的工作表,然后将其保存为文本文件。我一直使用Sheet.SaveAs,然后以不同的方式命名文件。有没有更强大的方式来保存文件并移动它们?我当前的代码运行如下:如何将每个单独的工作表保存为一个txt文件
OldPath = ThisWorkbook.Path & "\" ' current path to this workbook
OldFile = OldPath & ShtName & ".txt" ' location of file upon creation
NewPath = OldPath & FldName & "\" ' path for the folder where file will be moved
NewFile = NewPath & ShtName & ".txt" ' location of file after moving
'[3] CREATE INPUT FILES
ThisWorkbook.Sheets(ShtName).SaveAs OldFile, FileFormat:=xlTextWindows
ThisWorkbook.SaveAs OldPath & ThisFileName, FileFormat:=xlOpenXMLWorkbookMacroEnabled
If Len(Dir(NewPath, vbDirectory)) <> 0 And NewPath <> "" Then 'MOVE FILES TO A FOLDER
Else
MkDir NewPath ' create folder for input files to be moved if not yet created
End If
If Len(Dir(NewFile)) <> 0 Then
' delete an old version of file if it is already in folder
SetAttr NewFile, vbNormal
Kill NewFile
End If
Name OldFile As NewFile
这种方法感觉很麻烦,但我不希望有诉诸使用壳牌,因为我觉得这将是不太可靠的,除非有人建议来代替。
我喜欢的文件中的溶液很多,唯一的问题是我正在为同事设计一个模板,我希望当我传递文件时尽可能少地出现兼容性问题。有没有完成同样事情的内部方式? – teepee
假设您不想要求用户添加打印机,更新代码以使用文件生成代码 –