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

【练习-057】vbs生成excel工作表并写入指定内容

出题目的:
  让大家初步接触并了解vbs对excel的操作方法
加分原则:
  满分10分
题目如下:
  用vbs在当前目录生成test.xls,并向工作表的c3:f10中写入所在的行列数(以空格格开),如单元格为d8则写入
8 4。
***共同提高***

楼上的是不是看错题意了,要求是向工作表的c3:f10范围内写入数字,不是只写入两个单元格中。。。

获取本地路径个人习惯用path=createobject("wscript.shell").currentdirectory&"\"

[ 本帖最后由 batman 于 2010-1-6 17:06 编辑 ]
***共同提高***

TOP

今天才知道能根据给定单元格范围输入,以前都是用两个for来完成的。。。
***共同提高***

TOP

回复 4楼 的帖子

obj.columns ="=CONCATENATE(ROW(),"" "",COLUMN())"
巧妙地利用了excel本身的查找引用函数,但可以简化修改为obj.columns ="=ROW()&"" ""&COLUMN()"

[ 本帖最后由 batman 于 2010-1-6 18:41 编辑 ]
***共同提高***

TOP

简化4楼代码如下:
  1. Set oexcel=CreateObject("excel.application")
  2. oexcel.Workbooks.Add()
  3. oexcel.Range("C3:F10").columns ="=ROW()&"" ""&COLUMN()"
  4. oexcel.ActiveWorkbook.SaveAs(createobject("wscript.shell").currentdirectory&"\test.xls")
  5. oexcel.Quit
复制代码

[ 本帖最后由 batman 于 2010-1-6 19:01 编辑 ]
***共同提高***

TOP

回复 9楼 的帖子

路径不对,在上级目录生成了"本级目录名a.xls"

同时前面的截取是不是显得过于复杂,其实你直接3 to 10,3 to 6就可以了啊
***共同提高***

TOP

本人的解:
  1. dim counter1,counter2
  2. set objexcel=createobject("excel.application")
  3. objexcel.workbooks.add
  4. for counter1=3 to 10
  5.     for counter2=3 to 6
  6.         objexcel.cells(counter1,counter2).value=counter1&" "&counter2
  7.     next
  8. next
  9. objexcel.activeworkbook.saveas(createobject("wscript.shell").currentdirectory&"\test.xls")
  10. objexcel.quit
  11. set objexcel=nothing
复制代码
***共同提高***

TOP

返回列表