从用wsf脚本打开的excel文件中更改单元格属性

我有一个wsf脚本,vritten在visual basic中运行一个db2查询并将结果保存在一个文件.csv中。

Function CreaCSVdaSQL (SQL,fileCompletePath) Dim Input , conn,rs,csvtext,fso,fs,line set conn = CreateObject ("ADODB.Connection") conn.open _ "Provider=SQLOLEDB.1;Initial Catalog=XXXX;Data Source=XXXXX;MARS Connection=True;User Id=XXXX;password=XXXX" set rs = conn.execute (SQL) line = "" Dim tmp For Each tmp In rs.Fields line=line & tmp.Name & ";" Next if (Not rs.EOF) then csvText = line & vbcrlf & rs.getString (2,, ";", VBCrLf) rs.close: set rs = nothing conn.close: set conn = nothing Dim l_sn l_sn = Replace (Now, "-", "") l_sn = Replace (l_sn, ":", "") l_sn = Replace (l_sn, "", "") set fso = CreateObject ("Scripting.FileSystemObject") set fs = fso.CreateTextFile (fileCompletePath, true) fs.writeline (csvText) fs.close: set fs = nothing set fso = nothing end if End Function 

每次我的同事打开文件csv与Excel必须改变文本格式的单元格,我试图find一种方法来编程,没有一个macros,因为该文件被删除,每次脚本运行,不能存储macros。

有人可以帮助我吗? 谢谢。

.CSV文件不能存储关于列的数据types/元信息。 如果db2不提供直接/可靠地导出到.XLS的工具,那么您的选项是:

  1. 创build一个schema.ini文件来描述.CSV的结构
  2. 使用“导入”对话框向导创build并保存合适的导入规范; 然后通过引用这个规格的macros来打开.CSV
  3. 在适当的位置连接引号或重新格式化来增强您的SQL查询
  4. 使用“Excel.Application”打开.CVS,进行必要的更改,保存为.XLS