因为txt文件中用空格做分隔符,但有的列内容本身就是空格,所以用的是固定宽度分隔,从第二行开始插入数据:
执行下面一段宏,保存出来的文件会包含上一个文件的内容(没有清楚单元格内容,然后另存为),如何能做到保存出来的文件正确,并且是从A2开始插入数据呢
最好是能做成一个单独的文件出来,只需要执行这个文件就好了,如果可以做到,增加问题点数
----------------
Sub Macro1()
Dim file As String
file = Dir(ThisWorkbook.Path & "\*.UN.*")
While file <> ""
Range("a1").Value = "Asset Id"
Range("A1").value("***")
...
Range("A2").Select
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;" & ThisWorkbook.Path & "\" & file, Destination:=Range("A2"))
.Name = "aa"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = -535
.TextFileStartRow = 1
.TextFileParseType = xlFixedWidth
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = True
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1)
.TextFileFixedColumnWidths = Array(20, 3, 2, 10, 9, 7, 8, 10, 7)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
ActiveWorkbook.SaveAs filename:=ThisWorkbook.Path & "\" & file & ".xls", FileFormat:=xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
, CreateBackup:=False
file = Dir()
Wend
End Sub
6 个解决方案
#1
我的理解能力太差... ...
#2
TXT导入我做过很多,各种类型的都做过。你有附件吗?
#3
1楼的高手,都没办法啊。呵呵。
用录制宏的方法自己摸索一下。
用录制宏的方法自己摸索一下。
#4
还有要确定你的txt里面的内容格式要统一。
不统一。就没办法了。
按你说的,你可以把txt文件扩展名改为:csv。然后用excel打开csv文件。看是不是你要的。
不统一。就没办法了。
按你说的,你可以把txt文件扩展名改为:csv。然后用excel打开csv文件。看是不是你要的。
#5
应该不难啊。 录一段宏,然后修改一下。
推荐你看一下这些帮助
EXCEL 2003 Help 下载
VBA参考 下载
EXCEL VBA 参考下载
或者你到QQ群46057031,找我也行。 晚上在线。.
[align=center] = = = = 思 想 重 于 技 巧 = = = =
[/align]
.
贴子分数<20:对自已的问题不予重视。
贴子大量未结:对别人的回答不予尊重。
.
#6
自己解决了
#1
我的理解能力太差... ...
#2
TXT导入我做过很多,各种类型的都做过。你有附件吗?
#3
1楼的高手,都没办法啊。呵呵。
用录制宏的方法自己摸索一下。
用录制宏的方法自己摸索一下。
#4
还有要确定你的txt里面的内容格式要统一。
不统一。就没办法了。
按你说的,你可以把txt文件扩展名改为:csv。然后用excel打开csv文件。看是不是你要的。
不统一。就没办法了。
按你说的,你可以把txt文件扩展名改为:csv。然后用excel打开csv文件。看是不是你要的。
#5
应该不难啊。 录一段宏,然后修改一下。
推荐你看一下这些帮助
EXCEL 2003 Help 下载
VBA参考 下载
EXCEL VBA 参考下载
或者你到QQ群46057031,找我也行。 晚上在线。.
[align=center] = = = = 思 想 重 于 技 巧 = = = =
[/align]
.
贴子分数<20:对自已的问题不予重视。
贴子大量未结:对别人的回答不予尊重。
.
#6
自己解决了