[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[问题求助] 短短几行VBS代码为何总是提示无效字符

  1. set oExcel=CreateObject("Excel.Application")
  2. oExcel.Visible=True
  3. set xlsfile=oExcel.Workbooks.Open FileName:="d:\data.txt",ReadOnly:=True,Format:=6,Delimiter=:"|"
复制代码
总共3行的脚本 提示第1行错误:无效字符
到底哪里出问题了呢 别的脚本类似代码运行的好好的啊 会不会是open方法的参数写法不对 可是也不应该提示是第1行的问题啊???
!scripting!

谢谢了,菜鸟学习

TOP

回复 17# zz100001
已补 忙着写脚本没顾上
!scripting!

TOP

新人你说分用完了,那就第二天登陆上来给补加上啊,不然会伤了大大的心,把你列入黑名单,以后再也不看你的问题了,即使换马甲也没用

TOP

回复 14# CrLf
我这是12.0 难怪 微软的版本是不是太多了点
!scripting!

TOP

回复 14# CrLf
好的 非常非常感谢啊 有高人指点少走好多弯路
!scripting!

TOP

回复 12# 普大喜奔


    同样的代码,已测无误,可能是版本差异。
    我这里 MsgBox oexcel.Version 的结果是 11.0
    你可以去下一个 vbsedit 或者直接用 excel 的宏编辑器,利用自动提示看下 .open 方法的参数说明,把参数对上位置就行

TOP

回复 11# CrLf
你说那个打开word的代码啊 是这样
  1. objWord.Visible=False
  2. '以只读方式打开,并且避免打开文件转换或编码对话框
  3. set docfile=objWord.Documents.Open FileName:=arg,ReadOnly:=True,ConfirmConversions:=false,NoEncodingDialog:=true
  4. str=docfile.Content
  5. docfile.Close
复制代码
!scripting!

TOP

回复 11# CrLf
代码是这样
  1. set oexcel=createobject("excel.application")
  2. oexcel.visible=true
  3. oexcel.workbooks.open "d:\data.txt",,True,6,,,,,"|"
复制代码
data.txt内容:
张三|12345|abc|
李大四|67890|def|
!scripting!

TOP

回复 10# 普大喜奔


    没注意前面有个 set,已修改,但运行到那里应该会报错退出才是,你是怎么打开的...

TOP

回复 7# CrLf
小弟又有新问题求教,还是刚才的代码,运行正常了但没有效果,比如data.txt的内容是这样

我用excel手动打开并设置分隔符为"|"的效果是这样

但代码运行的效果是这样

全部的内容都挤在第一列了 open参数好像没有起作用哇
!scripting!

TOP

回复 8# 普大喜奔


    我的意思是 vbs 没有 := 运算符

TOP

回复 7# CrLf
呵呵 我没全贴出来 arg是个字符串变量 在前面定义了
!scripting!

TOP

回复 6# 普大喜奔


    vbs 没有 FileName:=arg 这种用法

TOP

回复 3# CrLf
word的document.open参数可以跳着写啊,比如
set docfile=objWord.Documents.Open FileName:=arg,ReadOnly:=True,ConfirmConversions:=false,NoEncodingDialog:=true
在另一个脚本里可以正常运行
excel的确是你说的 没法这么搞
!scripting!

TOP

返回列表