vb中怎样调用并执行EXCEL中的宏?

netmuse 2002-04-15 09:33:19
在vb中后台调用并执行Excel中的宏,并能传参数?怎么做?Help!
...全文
291 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
lishush 2002-04-15
  • 打赏
  • 举报
回复
引用Excel9库
chen780831 2002-04-15
  • 打赏
  • 举报
回复
我做过VC的,不知对你有没有帮助:
_Application ExcelApp;
Workbooks wbsMyBooks;
_Workbook wbMyBook;
Worksheets wssMysheets;
_Worksheet wsMysheet;
Range rgMyRge;
if (!ExcelApp.CreateDispatch("Excel.Application",NULL))
{ MessageBox("创建Excel服务失败!","错",MB_OK|MB_ICONERROR);
return;}
wbsMyBooks.AttachDispatch(ExcelApp.GetWorkbooks(),true);
wbMyBook.AttachDispatch(wbsMyBooks.Add(_variant_t(filename)));
//filename 是自己定义的一个模板文件,如Template.xlt,宏也在其中定
//义,此文件可用excel创建
wbMyBook.AttachDispatch(wbsMyBooks.Add(_variant_t(filename)));
//得到Worksheets
wssMysheets.AttachDispatch(wbMyBook.GetWorksheets(),true);
//得到sheet1
wsMysheet.AttachDispatch(wssMysheets.GetItem(_variant_t("sheet1")),true);
//得到全部Cells,此时,rgMyRge是cells的集合
ExcelApp.Run(_variant_t("Fontformat"),vtMissing,vtMissing,vtMissing,
vtMissing,vtMissing,vtMissing,vtMissing,vtMissing,vtMissing,vtMissing,
vtMissing,vtMissing,vtMissing,vtMissing,vtMissing,vtMissing,vtMissing,
vtMissing,vtMissing,vtMissing,vtMissing,vtMissing,vtMissing,vtMissing,
vtMissing,vtMissing,vtMissing,vtMissing,vtMissing,vtMissing);//其中Fontformat为宏名
rgMyRge.ReleaseDispatch();
wsMysheet.ReleaseDispatch();
wssMysheets.ReleaseDispatch();
wbMyBook.ReleaseDispatch();
wbsMyBooks.ReleaseDispatch();
ExcelApp.ReleaseDispatch();
netmuse 2002-04-15
  • 打赏
  • 举报
回复
还有呢?小弟没做过,还请多多指教
VBA是什么   直到90年代早期,使应用程序自动化还是充满挑战性的领域.对每个需要自动化的应用程序,人们不得不学习一种不同的自动化语言.例如:可以用EXCEL语言来使EXCEL自动化,使用WORD BASIC使WORD自动化,等等.微软决定让它开发出来的应用程序共享一种通用的自动化语言--------Visual Basic For Application(VBA),可以认为VBA是非常流行的应用程序开发语言VASUAL BASIC 的子集.实际上VBA是"寄生于"VB应用程序的版本.VBA和VB的区别包括如下几个方面:   1. VB是设计用于创建标准的应用程序,而VBA是使已有的应用程序(EXCEL等)自动化   2. VB具有自己的开发环境,而VBA必须寄生于已有的应用程序.   3. 要运行VB开发的应用程序,用户不必安装VB,因为VB开发出的应用程序是可执行文件(*.EXE),而VBA开发的程序必须依赖于它的"父"应用程序,例如EXCEL.   尽管存在这些不同,VBA和VB在结构上仍然十分相似.事实上,如果你已经了解了VB,会发现学习VBA非常快.相应的,学完VBA会给学习VB打下坚实的基础.而且,当学会在EXCELVBA创建解决方案后,即已具备在WORD ACCESS OUTLOOK FOXPRO PROWERPOINT VBA创建解决方案的大部分知识.   * VBA一个关键特征是你所学的知识在微软的一些产品可以相互转化.   * VBA可以称作EXCEL的"遥控器".   VBA究竟是什么?更确切地讲,它是一种自动化语言,它可以使常用的程序自动化,可以创建自定义的解决方案.    此外,如果你愿意,还可以将EXCEL用做开发平台实现应用程序. …… …… …… …… …… …… 欢迎使用 VBScript 语言参考 通过对信息进行分组,可以使您方便地研究 Visual Basic 脚本的各个主题。 可以在“字母顺序关键字列表”找到 VBScript 语言的所有主题。如果只需要查看某个主题(例如对象),则有对该主题进行详细说明的章节可供查阅。 如何操作呢?单击左边任意一个标题,即可显示该标题所包含的项目列表。从该列表选择要查看的主题。打开所选主题之后,就能够很容易地链接到其他相关章节。 好了,现在就开始行动,赶快进去看一看吧!学习几个语句,研究几种方法,或者熟悉几个函数。您会发现 VBScript 语言的功能是多么强大。
非常详尽的Excel_VBA程序设计,好不容易才整理搜索到的。 一、VBA语言基础 1 第一节 标识符 1 第二节 运算符 1 第三节 数据类型 1 第四节 变量与常量 1 第五节 数组 2 第六节 注释和赋值语句 2 第七节 书写规范 2 第八节 判断语句 2 第九节 循环语句 3 第十节 其他类语句和错误语句处理 4 第十一节 过程和函数 5 一.Sub过程 5 二.Function函数 5 三.Property属性过程和Event事件过程 5 第十二节内部函数 6 一.测试函数 6 二.数学函数 6 三.字符串函数 6 四.转换函数 6 五.时间函数 7 第十三节 文件操作 7 文件 7 删除 7 打开 7 读入 8 写入 8 关闭 8 其他文件函数 8 二、Visual BASIC程序设计网络教学 8 第一课 VBA是什么 8 1.1 VBA是什么 8 1.2 EXCEL环境基于应用程序自动化的优点 9 1.3 录制简单的 9 1.4 执行 10 1.5 查看录制的代码 10 1.6 编辑录制的代码 11 1.7 录制的局限性 12 1.8 小结 12 第二课 处理录制的 12 2.1 为指定快捷键 12 2.2 决定保存的位置 13 2.3 个人工作簿 13 2.3.1 保存到个人工作簿 13 2.3.2 使用并编辑个人工作簿 13 2.4 将指定给按钮 14 2.5 将指定给图片或其他对象 14 2.6 小结 14 第三课 学习控件 15 3.1 EXCEL开发过程简介 15 3.2 认识不同的控件 15 3.3 向工作表添加控件 15 3.4 设置控件的特性 16 3.5 给控件命名 16 3.6 使用用户窗体 16 3.7 疑难解答 17 第四课 理解变量和变量的作用 17 4.1 代码存在的位置:模块 17 4.2 对模块的概览 18 4.2.1 创建过程 18 4.2.2 运行 19 4.3 保存对模块所做的改变 19 4.4 变量 19 4.4.1 变量的数据类型 20 4.4.2 用Dim语句创建变量(声明变量) 21 4.4.3 变量命名的惯例 21 4.4.4 使用数组 22 4.4.5 变量赋值 23 第五课 利用VBA设置工作表使用权限 23 1.使用With语句。 25 2.使用对象变量。 25 方法3:减少对象的激活和选择 26 方法4:关闭屏幕更新 26 第六课 提高ExcelVBA的效率 27 方法1:尽量使用VBA原有的属性、方法和Worksheet函数 27 方法2:尽量减少使用对象引用,尤其在循环 28 1.使用With语句。 28 2.使用对象变量。 28 3.在循环要尽量减少对象的访问。 28 方法3:减少对象的激活和选择 28 方法4:关闭屏幕更新 29 第七课 如何在Excel里使用定时器 29 三、学习微软 Excel 2002 VBA 编程和XML,ASP技术 31 第一章 电子表格自动化简介和了解命令 31 1了解 31 2命令的普通应用 31 3写之前的计划 32 4录制 33 5运行 34 6修改代码 35 7添加注释 38 8分析代码 38 9清除代码 39 10测试修改好的 40 11两个层面运行的方法 40 12完善你的代码 41 13重新命名 43 14运行的其它方法 43 15使用键盘快捷键运行 43 16通过菜单运行 44 17通过工具栏按钮运行 46 18通过工作表里面的按钮运行 47 19保存 48 20打印 48 21保存在个人工作簿 48 22打开含有的工作簿 50 23VB编辑窗口 51 24了解工程浏览窗口 51 25了解属性窗口 52 26了解代码窗口 52 27 VB编辑器里的其它窗口 54 28接下来…… 55 第二章 VBA 第一步 55 1了解指令,模块和过程 55 2 VBA工程命名 55 3模块重命名 56 4从其它工程调用过程 57 5了解对象,属性和方法 58 6学习对象,属性和方法 59 7句法和文法 61 8打断很长的VBA语句 63 9了解VBA错误 63 10查找帮助 65 11语法和编程快捷助手 66 12属性/方法列表 67 13常数列表 67 14参数信息 68 15快速信息 68 16自动完成关键字 68 17缩进/凸出 69 18设置注释块/解除注释块 69 19使用对象浏览器 69 20使用VBA对象库 74 21用对象浏览器来定位过程 75 22使用立即窗口 75 23获取立即窗口里的信息 77 24学习对象 77 25电子表格单元格操作 78 26使用Range属性 78 27使用Cells属性 78 28使用Offset属性 79 29选择单元格的其它方法 80 30选择行和列 80 31获取工作表信息 81 32往工作表输入数据 81 33返回工作表的信息 81 34单元格格式 81 35移动,复制和删除单元格 82 36操作工作簿和工作表 82 37操作窗口(Windows) 83 38管理Excel应用程序 84 39接下来…… 84 第三章 了解变量,数据类型和常量 84 1保存VBA语句的结果 85 2变量是什么 85 3数据类型 85 4如何产生变量 86 5如何声明变量 86 6明确变量的数据类型 88 7变量赋值 89 8强制声明变量 91 9了解变量范围 92 10过程级别(当地)变量 92 11模块级别变量 92 12工程级别变量 93 13变量的存活期 94 14了解和使用静态变量 94 15声明和使用对象变量 95 16使用明确的对象变量 95 17查找变量定义 96 18在VB过程里面使用常量 96 19内置常量 96 20接下来…… 97 第四章 VBA过程:子程序和函数 98 1.关于函数过程 98 2.创建函数过程 98 3.执行函数过程 100 4.从工作表里运行函数过程 100 5.从另外一个VBA过程里运行函数过程 102 6.传递参数 102 7.明确参数类型 103 8.按地址和按值传递参数 104 9.使用可选的参数 105 10.定位内置函数 106 11.使用MsgBox函数 107 12.MsgBox函数的运行值 111 13.使用InputBox函数 111 14.数据类型转变 113 15.使用InputBox方法 114 16.使用主过程和子过程 116 17.接下来…… 118 第五章 基于VBA做决定 118 1.关系和逻辑运算符 119 2.If…Then语句 119 3.基于多于一个条件的决定 121 4.The If…Then…Else语句 122 5.If…Then…ElseIf语句 125 6.嵌套的If…Then语句 126 7.Select Case语句 127 8.和Case子句一起使用Is 128 9.确定Case子句里数值的范围 129 10.在Case子句里确定多个表达式 130
一个小巧而又十分强大的Excel加载项(插件)---OBS.DLL,大小1M左右,却能突破微软的技术壁垒,打破Excel的常规应用模式,开辟了Excel的另类应用空间。加载后新增一个"OBS"工具条,适用于Excel2002及以上版本,推荐在Excel2002/2003使用。 OBS.DLL的主要功能是制作和编辑OBS文档,一种类似TreeView控件的文档。换句话说,OBS.DLL将Excel表格变成了一个功能强大的超级TreeView控件!普通TreeView控件只能显示一列数据(仅一个字段),而OBS表格却可以显示更多的列(N个字段),而且每个字段都可以汇总(这一点又要比Excel自身的分类汇总更直观、简单),再配合VBA,可以让您轻松驾驭超灵无比的Excel! 当然,OBS.DLL还具备一些很有特色的功能,对Excel的功能来说,应该是一个很好的补充。如: 1、文简繁互换:在简体文和繁体文之间进行转换。 2、进制转换:在二进制、八进制、十进制、十六进制之间相互转换。 3、人民币大小写互换:在Excel,很多时候需要将小写的金额数字转换成大写,而Excel提供的函数转换出来的格式并不符合国人的习惯,所以... 4、数字签名:对Excel表格的内容进行签名保护,主要是防止提供者提供的内容被非法修改。可以用于Excel公文的电子签名,实现真正的无纸办公... 5、保存为图片文件:相当于Excel的照相机功能(有过之而无不及)。可以将Excel的单元格区域、Shape对象、图片、图表等(甚至是组合形式)以gif、jpg、bmp等各式保存到磁盘。 6、全功能批注----真正所见即所得的批注编辑器。 7、VB/VBA代码归纳与重写:对VB/VBA代码进行混淆,大大降低代码的可读性,是一种保护VB/VBA代码的很有效的方法。详细的注释说明和一目了然的名称将有助于设计阶段的调试和查错,但是代码一旦发布后,这些优点将会使黑客轻而易举地破解你的成果,呵呵,用这个吧,保证黑客对您的VB/VBA代码一点兴趣和胃口都没有!! 8、解除Excel文档的内部密码。很多时候,我们需要设置Excel表格/工作簿的保护密码,可是随着时间的推移,这些密码很可能遗忘了,怎么办?很着急啊!!!哈哈,用这个保证在2分钟之内解决问题(换个角度:不要再自欺欺人了,Excel的内部密码形同虚设)。 9、信息加密/解密。对Excel文档的一些敏感信息进行加密处理,即使文档被破解了,里面的信息仍然很安全。可以说这个功能是对Excel安全的一个有力补充。 10、工程代码锁定解锁器。可以撤销ExcelVBA保护密码(对word、Access同样有效) 11、控制和保存功能。这个功能能满足我们不用记一个密码就能非常有效地保护我们的Excel文档,而且可以免除来自微软的威胁。 12、Cookie管理器。在信息时代,没有网络怎么可以?上网时间长了,就会发现在临时文件夹挤满了cookies,不但占据磁盘空间,而且还可能泄露秘密。用“清理cookie”命令吧,又觉得有些没有必要删,否则下次还得再输一遍;一个一个删吧,东西太多,想都不能想。怎么办??用这个啊!!只要一次性设置要保留的cookie并选“退出Excel时自动清理”即可。以后只要退出Excel,你的cookies目录就不会再有其它乱七八糟的cookie了。 13、超级预览。可以根据当前的选择内容自动调整预览对象。如果选的是单元格区域,就只预览你选的区域;如果选的是图表,则仅预览选的图表;如果只是一个单元格,则自动显示分页符... ... 14、屏幕锁定。当我们需要临时离开电脑而又不想关闭Excel文档时(并不局限于Excel文档,也可以是其它,但前提是要运行Excel),可以启动这个功能,这样其他人就不可能看到您不希望他们看到的东西。 15、尝试打开忘记密码的文件。暴力破解Excel的打开密码,注意:这个仅对拥有密码设计方案的人有效。 16、Excel加载项/管理器。对当前Excel环境下的加载/加载项/VBA加载项进行列表,并可以查看相关属性、修改运行状态,甚至是一键破解。 17、Excel对象管理器,可以批量转换Excel的对象(图片、Shape、图表等)到图片文件; 18、在Excel播放背景音乐、定时执行特定的程序、整点报时,一定很惬意... 19、屏幕录像及捕捉。哦,这个功能很强大啊。可以截取屏幕图像、录制屏幕变化、图片格式转换、批量bmp转成AVI文件、AVI文件转成动画GIF文件、图片标注... ...强大的不行啦,赶快去看看吧。快捷键:Ctrl+Alt+SpaceBar 或者 Ctrl+左WinKey(微软左徽标键) 20、DLL神探,DLL的最大威胁就是注入到系统进程,让人防不胜防... 21、一键恢复Excel的系统菜单。这个功能... ... 22、Excel版简易游戏。只是几个可以在Excel玩的游戏... 23、计划横道图(甘特图)。偶觉得还是用Excel来做横道图最方便了... ... 24、偶将呆板的网络调查和网络投票移植到OBS.DLL了,变被动为主动! ... ... 有兴趣的请访问:http://www.ChinaOBS.com 。本站热诚欢迎您的到来。
Excel 2007与VBA编程从入门到精通 7/10 完整清晰版 PDF ,有目录。共 200MB,分为 10 个分卷 Excel2007 与VBA编程 从入门到精通 OFFICE2007 原价:43.00元 作者:张强,刘飚 编著 出版社:电子工业出版社 出版日期:2008-2-1 ISBN:9787121057250 字数:750000 页码:457 内容提要 --------------------------------------------------------------------------------    本书将带领读者历经Excel 2007 VBA从入门到精通的全部学习过程,介绍Excel VBA的基础知识和基本语法结构,引导读者掌握Excel VBA的基本操作,如录制,以及使用Excel VBA操作Excel 的基本对象工作簿、工作表、单元格。   本书结合大量实例介绍了使用Excel VBA完成各种操作的方法和技巧,使读者在进入Excel VBA世界大门之后能得到进一步的提高,以便在Excel VBA世界获得更大的自由。  本书适合用于想学习编写程序的Excel VBA入门用户和想提高Excel VBA编程水平的高级用户。 目录 -------------------------------------------------------------------------------- 第一篇 基础篇  第1章 了解Excel 2007 VBA开发平台  1.1 认识Excel 2007  1.1.1 Excel 2007的基本对象   1.1.2 Excel 2007的新特点  1.2 Excel 2007的文件格式   1.3 使用Excel开发应用程序的理由   1.4 Excel 2007 VBA作为开发平台的特点   1.5 Excel 2007 VBA开发平台的局限   1.6 Excel 2007功能区简介及其设置   1.6.1 Excel 2007的功能区   1.6.2 动态选项卡   1.6.3 快速访问工具栏   1.6.4 添加Excel 2007命令按钮   1.7 小结   1.8 练习与习题  第2章    2.1 认识   2.1.1 什么是   2.1.2 的运行原理   2.1.3 的制作方法   2.2 录制   2.3 执行   2.3.1 通过快捷键执行   2.3.2 通过“”对话框执行   2.3.3 通过图形执行   2.3.4 通过按钮执行   2.3.5 通过查看按钮来运行   2.3.6 单击快速访问工具栏上的按钮执行   2.4 决定保存的位置   2.5 加载   2.5.1 什么是加载   2.5.2 加载的类型   2.5.3 Excel 2007提供的加载   2.5.4 添加其他来源的加载   2.5.5 录制加载   2.5.6 卸载加载   2.6 的数字签名   2.6.1 什么是数字签名   2.6.2 如何使用数字签名   2.6.3 安全性概述   2.6.4 为项目进行数字签名   2.6.5 使用图章对Excel 2007进行数字签名 2.7 录制的实例应用   2.7.1 自动完成工龄土资加   2.7.2 使用相对引用录制   2.8 录制的局限性   2.9 小结   2.10 练习与习题  第3章 认识VBA   3.1 程序设计语言   3.2 VBVBA   3.2.1 VBA的发展   3.2.2 VBA的特点   3.2.3 VBA在Excel 2007的应用   3.2.4 VBA和VB的区别   3.3 VBA程序设计初步 ……  第4章 VBA编程基础   第5章 VBA基本语法结构 第二篇 掌握Excel2007VBA对象模型  第6章 Excel2007VBA对象模型结构  第7章 使用VBA操作工作簿  第8章 使用VBA操作工作表  第9章 使用VBA操作单元格 第三篇 Excel2007应用程序的界面设计  第10章 在Excel工作表创建操作界面  第11章 创建用户窗体  第12章 自定义Excel2007功能区用户界面 第四篇 专题篇  第13章 使用VBA操作图表  第14章 创建类、记录和类集 第五篇 应用篇  第16章 应用实例——成绩录入系统需求分析 

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧