钻到牛角尖,看谁先出来的问题(EXCEL操作TXT) ( 积分: 100 )

  • 主题发起人 主题发起人 zsf333
  • 开始时间 开始时间
Z

zsf333

Unregistered / Unconfirmed
GUEST, unregistred user!
目的:
文本文件导入EXCEL中
背景:
文本文件中存储一组有规律格式的内容,如下:
1 数字 135 22357 2738470218344444 8.8
2 数字 135 22358 9087650908628888 2
3 数字 135 22359 5643100905799999 1.3
4 数字 135 22361 7865340904888442 2.3
5 数字 135 22362 7777770909147313 3
用excel直接打开这个文件就会启动“文本导入向导”
我录制了一段打开这个文本文件的宏
Workbooks.OpenText Filename:="E:/20050604080011-20050605080011A" _
, Origin:=936, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=True, Semicolon:=False, _
Comma:=False, Space:=True, Other:=False, FieldInfo:=Array(Array(1, 9), _
Array(2, 2), Array(3, 9), Array(4, 9), Array(5, 2), Array(6, 2), Array(7, 2), Array(8, 9), _
Array(9, 9), Array(10, 9), Array(11, 2), Array(12, 2), Array(13, 9)), _
TrailingMinusNumbers:=True
请问:
在delphi中如何加入FieldInfo中的那些个参数,那些参数是用来确定每一列的格式的,
我在delphi中是这样写的:
ExcelApplication1.Workbooks.OpenText('E:/20050604080011-20050605080011A', 936, 1, xlDelimited, xlDoubleQuote, True, True, False, False, True, False, False, EmptyParam, True, '.', ',', 0);
其中那个“EmptyParam”我是不知道如何用才写了空参数,这样达不到我需要的格式定义。
请各位大侠共享你们的智慧,献出你们的爱心,区区100奉上,略表心意。
 
目的:
文本文件导入EXCEL中
背景:
文本文件中存储一组有规律格式的内容,如下:
1 数字 135 22357 2738470218344444 8.8
2 数字 135 22358 9087650908628888 2
3 数字 135 22359 5643100905799999 1.3
4 数字 135 22361 7865340904888442 2.3
5 数字 135 22362 7777770909147313 3
用excel直接打开这个文件就会启动“文本导入向导”
我录制了一段打开这个文本文件的宏
Workbooks.OpenText Filename:="E:/20050604080011-20050605080011A" _
, Origin:=936, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=True, Semicolon:=False, _
Comma:=False, Space:=True, Other:=False, FieldInfo:=Array(Array(1, 9), _
Array(2, 2), Array(3, 9), Array(4, 9), Array(5, 2), Array(6, 2), Array(7, 2), Array(8, 9), _
Array(9, 9), Array(10, 9), Array(11, 2), Array(12, 2), Array(13, 9)), _
TrailingMinusNumbers:=True
请问:
在delphi中如何加入FieldInfo中的那些个参数,那些参数是用来确定每一列的格式的,
我在delphi中是这样写的:
ExcelApplication1.Workbooks.OpenText('E:/20050604080011-20050605080011A', 936, 1, xlDelimited, xlDoubleQuote, True, True, False, False, True, False, False, EmptyParam, True, '.', ',', 0);
其中那个“EmptyParam”我是不知道如何用才写了空参数,这样达不到我需要的格式定义。
请各位大侠共享你们的智慧,献出你们的爱心,区区100奉上,略表心意。
 
先看一下 Delphi中对OpenText函数是如何定义的。再根据参数处理。
 
delphi对opentext的定义也就是我上面写的那些,而且在fieldInfo那个字段也用的是这个参数类型是olevariant
这样还有什么处理办法吗?
 
来个简单点的
var
sl:tstringlist;
begin
sl:=tstringlist.create;
try
sl.loadfromfile('d:/aa.txt');
sl.text:=stringreplace(sl.text,' ',#9,[rfreplaceall]);
sl.savetofile('d:/aa.xls');
finally
sl.free;
end;
end;
 
ExcelApplication1.Workbooks.OpenText('E:/20050604080011-20050605080011A', xlWindows, 1, xlDelimited, xlDoubleQuote, True, True, False, False, True, False, False, EmptyParam, True, '.', ',', 0);
 
后退
顶部