我有一个从应用程序导出的大文本文件,每行有三个不需要的零。需要将文本文件导入另一个应用程序,并且零会导致问题。
基本上每行需要删除三个零。这些零始终位于相同的位置(从左侧开始计算时,字符数相同),但位置位于中间位置。我尝试了各种各样的事情,比如将文件导入excel,删除零然后导出为文本文件,但导出的文本文件始终存在格式问题。
有人可以提出解决方案或指出我正确的方向吗?
答案 0 :(得分:2)
Sub replaceInTx()
Dim inFile As String, outFile As String
Dim curLine As String
inFile = "x:\Documents\test.txt"
outFile = inFile & ".new.txt"
Open inFile For Input As #1
Open outFile For Output As #2
Do Until EOF(1)
Line Input #1, curLine
Print #2, Replace(curLine, "000", "", 6, 1, vbTextCompare)
Loop
Close #1
Close #2
End Sub
或者,你可以使用文本编辑器来实现块选择(我喜欢Notepad2,小巧,快速和便携)
答案 1 :(得分:1)
我看到你经常使用excel。 将文本文件导入excel时是否使用导入功能并将数据推送到单独的单元格中? 如果单元格是数字,则可以执行以下操作:
=LEFT(TEXT(G5,"#"),LEN(TEXT(G5,"#"))-3)
如果单元格是文本:
=LEFT(G5,LEN(G5)-3)
G5是数据行/字段所在的单元格。
答案 2 :(得分:1)
curLine = Left(curLine, 104)
这将占用前104个字符