我正在尝试自动化一个进程,即文件夹中有50多个tsv文件。必须通过notepad ++打开它们并将其作为.txt文件保存在同一文件夹中。
使用以下代码我在notepad ++中打开tsv文件。
MyTxtFile = Shell("C:\Program Files (x86)\Notepad++\notepad++.exe I:\Test\Sample.tsv", 1)
但是,我不知道如何使用VBA将其保存为txt文件。它可行吗?如果是,请教我如何。
提前谢谢你:)
答案 0 :(得分:1)
如果您只想将文件从* .tsv重命名为* .txt,则可以使用命令行
ren *.tsv *.txt
答案 1 :(得分:1)
最后通过Data =>导出找到了补救措施从Text选项可以解决上述问题..
下面是同样的代码..
Do While fname <> ""
Workbooks.Add
Set wBook = ActiveWorkbook
Set wksht = ActiveSheet
With wksht.QueryTables.Add(Connection:="TEXT;" & folder_name & fname, Destination:=Range("$A$1"))
.Name = fname
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 65001
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierNone
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = True
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1, 1, 1)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
答案 2 :(得分:0)
还有另一个线程涉及调用shell命令的一般方面。也许它可以对你有所帮助: Execute a command in command prompt using excel VBA