首页 > 开发 > 综合 > 正文

OFFICE编程思路(VBA)

2024-07-21 02:23:16
字体:
来源:转载
供稿:网友

下面是vb打开文件的代码:

if dir("d:/excel.bz") = "" then '判断excel是否打开
set xlapp = createobject("excel.application") '创建excel应用类
xlapp.visible = true '设置excel可见
set xlbook = xlapp.workbooks.open("d:/test.xls") '打开excel工作簿
set xlsheet = xlbook.worksheets(1) '打开excel工作表





activeworkbook.save

xlapp.displayalerts = false
xlapp.screenupdating = true
xlapp.quit


end if

然后打开excel工作表,在工作表上做本来程序准备做的操作并录制成“宏”,直接拷贝到上面的空白处。就搞定了。
宏代码如下(vba代码,其中少量代码按照vba的编程语法做了修改):

' 下面信息来自宏
range("a4:c4").select
selection.copy
range("a11").select
activesheet.paste
range("a3:c3").select
application.cutcopymode = false
selection.copy
range("a4").select
activesheet.paste
range("a5").select
activesheet.paste
range("a6").select
activesheet.paste
range("a7").select
activesheet.paste
range("a8").select
activesheet.paste
range("a9").select
activesheet.paste
range("a10").select
activesheet.paste


application.cutcopymode = false
for i = 1 to 9
range("a" & (i + 1)).select
activecell.formular1c1 = "项目" & i
range("b" & (i + 1)).select
activecell.formular1c1 = i
range("c" & (i + 1)).select
activecell.formular1c1 = "说明" & i
next

range("b11").select
activecell.formular1c1 = "=sum(r[-9]c:r[-1]c)"


对word的操作很类似,其他语言(例如c++)可以按照这种语法结构做com编程



上一篇:值传递

下一篇:目录共享

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表