马克西姆餐厅点什么:关于VB与EXCEL的无缝连接
来源:百度文库 编辑:九乡新闻网 时间:2024/05/08 19:56:33
关于VB与EXCEL的无缝连接 VB是常用的应用软件开发工具之一,由于VB的报表功能有限,而且一但报表格式发生变化,就得相应修改程序,给应用软件的维护工作带来极大的不便。因此有很多程序员现在已经充分利用EXECL的强大报表功来实现报表功能。但由于VB与EXCEL由于分别属于不同的应用系统,如何把它们有机地结合在一起,是一个值得我们研究的课题。
一、 VB读写EXCEL表:
VB本身提自动化功能可以读写EXCEL表,其方法如下:
1、在工程中引用Microsoft Excel类型库:
从"工程"菜单中选择"引用"栏;选择Microsoft Excel 9.0 Object Library(EXCEL2000),然后选择"确定"。表示在工程中要引用EXCEL类型库。
2、在通用对象的声明过程中定义EXCEL对象:
Dim xlApp As Excel.Application
Dim xlBook As Excel.WorkBook
Dim xlSheet As Excel.Worksheet
3、在程序中操作EXCEL表常用命令:
Set xlApp = CreateObject("Excel.Application") ‘创建EXCEL对象
Set xlBook = xlApp.Workbooks.Open("文件名") ‘打开已经存在的EXCEL工件簿文件
xlApp.Visible = True ‘设置EXCEL对象可见(或不可见)
Set xlSheet = xlBook.Worksheets("表名") ‘设置活动工作表
xlSheet.Cells(row, col) =值 ‘给单元格(row,col)赋值
xlSheet.PrintOut ‘打印工作表
xlBook.Close (True) ‘关闭工作簿
xlApp.Quit ‘结束EXCEL对象
Set xlApp = Nothing ‘释放xlApp对象
xlBook.RunAutoMacros (xlAutoOpen) ‘运行EXCEL启动宏
xlBook.RunAutoMacros (xlAutoClose) ‘运行EXCEL关闭宏
4、在运用以上VB命令操作EXCEL表时,除非设置EXCEL对象不可见,否则VB程序可继续执行其它操作,也能够关闭EXCEL,同时也可对EXCEL进行操作。但在EXCEL操作过程中关闭EXCEL对象时,VB程序无法知道,如果此时使用EXCEL对象,则VB程序会产生自动化错误。形成VB程序无法完全控制EXCEL的状况,使得VB与EXCEL脱节。
二、 EXCEL的宏功能:
EXCEL提供一个Visual Basic编辑器,打开Visual Basic编辑器,其中有一工程属性窗口,点击右键菜单的"插入模块",则增加一个"模块1",在此模块中可以运用Visual Basic语言编写函数和过程并称之为宏。其中,EXCEL有两个自动宏:一个是启动宏(Sub Auto_Open()),另一个是关闭宏(Sub Auto_Close())。它们的特性是:当用EXCEL打含有启动宏的工簿时,就会自动运行启动宏,同理,当关闭含有关闭宏的工作簿时就会自动运行关闭宏。但是通过VB的自动化功能来调用EXCEL工作表时,启动宏和关闭宏不会自动运行,而需要在VB中通过命令xlBook.RunAutoMacros (xlAutoOpen)和xlBook.RunAutoMacros (xlAutoClose) 来运行启动宏和关闭宏。
三、 VB与EXCEL的相互勾通:
充分利用EXCEL的启动宏和关闭宏,可以实现VB与EXCEL的相互勾通,其方法如下:
在EXCEL的启动宏中加入一段程序,其功能是在磁盘中写入一个标志文件,同时在关闭宏中加入一段删除此标志文件的程序。VB程序在执行时通过判断此标志文件存在与否来判断EXCEL是否打开,如果此标志文件存在,表明EXCEL对象正在运行,应该禁止其它程序的运行。如果此标志文件不存在,表明EXCEL对象已被用户关闭,此时如果要使用EXCEL对象运行,必须重新创建EXCEL对象。
四、举例:
1、在VB中,建立一个FORM,在其上放置两个命令按钮,将Command1的Caption属性改为EXCEL,Command2的Caption属性改为End。然后在其中输入如下程序:
Dim xlApp As Excel.Application ‘定义EXCEL类
Dim xlBook As Excel.Workbook ‘定义工件簿类
Dim xlsheet As Excel.Worksheet ‘定义工作表类
Private Sub Command1_Click() ‘打开EXCEL过程
If Dir("D:\temp\excel.bz") = "" Then ‘判断EXCEL是否打开
Set xlApp = CreateObject("Excel.Application") ‘创建EXCEL应用类
xlApp.Visible = True ‘设置EXCEL可见
Set xlBook = xlApp.Workbooks.Open("D:\temp\bb.xls") ‘打开EXCEL工作簿
Set xlsheet = xlBook.Worksheets(1) ‘打开EXCEL工作表
xlsheet.Activate ‘激活工作表
xlsheet.Cells(1, 1) = "abc" ‘给单元格1行驶列赋值
xlBook.RunAutoMacros (xlAutoOpen) 运行EXCEL中的启动宏
Else
MsgBox ("EXCEL已打开")
End If
End Sub
Private Sub Command2_Click()
If Dir("D:\temp\excel.bz") <> "" Then ‘由VB关闭EXCEL
xlBook.RunAutoMacros (xlAutoClose) ‘执行EXCEL关闭宏
xlBook.Close (True) ‘关闭EXCEL工作簿
xlApp.Quit ‘关闭EXCEL
End If
Set xlApp = Nothing ‘释放EXCEL对象
End
End Sub
2、在D盘根目录上建立一个名为Temp的子目录,在Temp目录下建立一个名为"bb.xls"的EXCEL文件。
3、在"bb.xls"中打开Visual Basic编辑器,在工程窗口中点鼠标键选择插入模块,在模块中输入入下程序存盘:
Sub auto_open()
Open "d:\temp\excel.bz" For Output As #1 ‘写标志文件
Close #1
End Sub
Sub auto_close()
Kill "d:\temp\excel.bz" ‘删除标志文件
End Sub
4、运行VB程序,点击EXCEL按钮可以打开EXCEL系统,打开EXCEL系统后,VB程序和EXCEL分别属两个不同的应用系统,均可同时进行操作,由于系统加了判断,因此在VB程序中重复点击EXCEL按钮时会提示EXCEL已打开。如果在EXCEL中关闭EXCEL后再点EXCEL按钮,则会重新打开EXCEL。而无论EXCEL打开与否,通过VB程序均可关闭EXCEL。这样就实现了VB与EXCEL的无缝连接。
============================
---- 一.Excel对象
---- 微软的Excel对象模型包括了128个不同的对象,从矩形,文本框等简单的对象到透视表,图表等复杂的对象.下面我们简单介绍一下其中最重要,也是用得最多的四个对象.
---- 1. Application对象
---- Application对象处于Excel对象层次结构的顶层,表示Excel自身的运行环境.
---- 2. Workbook对象
---- Workbook对象直接地处于Application对象的下层,表示一个Excel工作薄文件.
---- 3. Worksheet对象
---- Worksheet对象包含于Workbook对象,表示一个Excel工作表.
---- 4. Range对象
---- Range对象包含于Worksheet对象,表示Excel工作表中的一个或多个单元格.
================================================Excel 基础入门教程Excel显示值计算 Excel单元格边界附加功能使用技巧 Excel自动隐藏值为0的单元格 Excel2007中的常见错误值 移动Excel 2007数据透视表 Excel 2007字段设置 Excel图表是什么 在Excel单元格中画表格 自定义Excel计算器按钮 取消Excel工作表里框线显示 Excel2003菜单栏里文件选项 Excel单元格为何文字显示不全 如何在Excel 2010快速设置隔行着色 Excel 2007中隐藏或显示行和列的方法 在Excel 2007 中禁止打印功能 掌握Excel工作簿与工作表中的快捷键 Excel用于选择数据和单元格的快捷键 用Excel图片批注功能做鼠触图片显示 Excel技巧:Excel2007的单元格定位快捷键 了解漂亮美观的Excel2007文档内置主题样式 Excel教程:醒目标注条件单元格的设置 有效性地圈出Excel表格中指定数据 Excel单元格自动调整字号 自定义Excel公式让数据不再重复 Excel快速输入文字数字 Office快捷键:用于Excel表格的快捷键 Excel 2007单元格内容的移动或复制 在Excel 2007中快速删除重复数据项 Excel 2007活动单元格找四邻 教你如何在Excel中快速输入内容 巧手教你移走Excel中自动链接 用Excel截屏让数据得到实时更新 在Office Excel中让你填充不连续的单元格 Excel打印问与答 Excel 2007“监视窗口”的应用 选择使用新版Excel 2007的10条理由 Excel2007数据设置只读和修改密码 Excel高效数据校验两法 Excel快捷键大全 Excel2007公式常见显示错误原因与解决方法 微软Office Excel使用中的种种限制 Excel 2007 新手入门 1.在Excel 2007 中禁止打印功能 2.Excel 2007中隐藏或显示行和列的方法 3.Excel 2007 4.Excel 2007字段设置 5.移动Excel 2007数据透视表 6.Excel 2007单元格内容的移动或复制 7.在Excel 2007中快速删除重复数据项 8.Excel 2007活动单元格找四邻 9.Excel 2007“监视窗口”的应用 10.选择使用新版Excel 2007的10条理由 11.了解漂亮美观的Excel2007文档内置主题样式 12.Excel2007中的常见错误值 13.Excel2007数据设置只读和修改密码 14.Excel2007公式常见显示错误原因与解决方法 15.Excel 2007加载宏所出现的问题 ======================================================== Excel 使用技巧 Excel填充技巧 Excel中双击的妙用 隐藏Excel 2007文档工作表 单独打印Excel图表方法 Excel 共享工作表技巧 Excel 2007 Excel 2007快捷键和功能键 Excel制作统计表技巧 教你六招 在Excel中轻松输入分式与分数 Excel 2007省时小技巧 语音校对功能实现数据核对妙用excel Excel 2007工作表的插入与删除方法 将Excel中存储为文本的数字转换为数字格式 微软Excel 单元格文本轻松换行 疑难杂症的克星 常用25条Excel技巧 技巧分享:鼠标双击在Excel中的妙用 插入表格后的Word删除空白页 Excel 2007表格中的字段设置技巧 如何设置才能使Excel公式 如何将Excel中多个不相邻区域的数据都打印在同一个页面上 教你彻底隐藏Excel2007文档工作表 让excel表格只能看不能改 Shift键在Excel里有这样的妙处 office Excel中双击技巧 在Excel 2003/2007中巧妙打印条形码 Excel 2007中轻松设置文本的样式 教你用Excel来聊天 Excel会计应学鲜为人知的技巧 如何在Excel中快速输入有固定内容的数据? 巧妙转换 让Excel人民币小写变大写 用Shift键快速将Excel表格变图片 巧用宏指令拒绝Excel2007文件打印 弹指如飞 Excel高速输入的技巧 在Excel中巧做复杂表头 灵犀一指 用Excel轻松排学生座位 设置Excel 2007数据精度 保障准确性 巧妙运用Excel中边界的附加功能 Excel2007无法安装加载项解决办法 Excel 2007数字格式与文本格式互转 为包含图形对象的Excel文档瘦身 Excel工作表的复制与移动技巧 Excel使用技巧 Office Excel 2007六则小技巧 Excel实用操作技巧九则 Excel将文本转换为数字的四种方法 Office Excel 工作簿优化技巧 掌握十二则技巧 Excel操作效率大大提高 常用办公软件 Excel技巧整理讲解 躲避老板 高手建议用Excel来聊天 让Excel2010在表中同时显示公式和值 Excel新增按钮快速更改大小写 Excel 2007 使用技巧 1.Excel 2007工作表的插入与删除方法 2.Excel 2007省时小技巧 3.Excel 2007快捷键和功能键 4.隐藏Excel 2007文档工作表 5.Excel 2007表格中的字段设置技巧 6.Excel 2007中轻松设置文本的样式 7.设置Excel 2007数据精度 保障准确性 8.Excel 2007数字格式与文本格式互转 9.Office Excel 2007六则小技巧 10.Excel技巧:Excel2007的单元格定位快捷键 11.教你彻底隐藏Excel2007文档工作表 12.巧用宏指令拒绝Excel2007文件打印 13.Excel2007无法安装加载项解决办法 14.Excel 2007工作表的保护 15.Excel 2007乘法bug问题已得到解决 ============================================================== Excel 实用教程 Excel里输小数技巧 用Excel建立数据库 管理Excel2007条件格式规则的优先级 解决Excel产生求和误差问题 为Excel公式返回结果设置颜色 建立Excel超级链接 Excel 将工作表保存为网页 Excel与PowerPoint的协作 Excel2007 隐藏网格线 Excel 2003 也能多标签窗口 Excel 2003加密文件破解方法 将excel饼状图的图例设置为汉字 Excel函数实现列数较少表格分栏打印 Excel和Access间复制、导入和导出数据 Excel 2007中让信用卡号码安全地显示 Excel 2007中如何正确显示日期和时间 在Excel工作表单元格中手动输入各种数据 Excel函数的输入方法 Excel表格潜伏木马 办公室电脑谨防黑客偷窥 实例解析Excel划规求解 Excel转化成PDF格式彩色图片为什么会变成黑白色 巧用Excel公式 计算个人所得税 Excel 2007中的日期进行混合排序 Excel 2007 实用教程 1.Excel 2007中如何正确显示日期和时间 2.Excel 2007中让信用卡号码安全地显示 3.Excel 2007中的日期进行混合排序 4.Excel2007 隐藏网格线 5.管理Excel2007条件格式规则的优先级 6.使用Excel 2007自动添加表格字段标题功能 7.巧用Excel 2003/2007函数实现分类汇总 8.在Excel 2007中实现老式工具栏 9.在Excel 2007中创建组合图表 10.用图案填充Excel 2007图表 11.如何使用Excel 2007绘制甘特图 12.在Excel 2007中操作和管理数据实例操作 13.在Exce 2007中快速检索大量数据 14.设计Excel 2007数据表格式 15.Excel 2007单元格批注
一、 VB读写EXCEL表:
VB本身提自动化功能可以读写EXCEL表,其方法如下:
1、在工程中引用Microsoft Excel类型库:
从"工程"菜单中选择"引用"栏;选择Microsoft Excel 9.0 Object Library(EXCEL2000),然后选择"确定"。表示在工程中要引用EXCEL类型库。
2、在通用对象的声明过程中定义EXCEL对象:
Dim xlApp As Excel.Application
Dim xlBook As Excel.WorkBook
Dim xlSheet As Excel.Worksheet
3、在程序中操作EXCEL表常用命令:
Set xlApp = CreateObject("Excel.Application") ‘创建EXCEL对象
Set xlBook = xlApp.Workbooks.Open("文件名") ‘打开已经存在的EXCEL工件簿文件
xlApp.Visible = True ‘设置EXCEL对象可见(或不可见)
Set xlSheet = xlBook.Worksheets("表名") ‘设置活动工作表
xlSheet.Cells(row, col) =值 ‘给单元格(row,col)赋值
xlSheet.PrintOut ‘打印工作表
xlBook.Close (True) ‘关闭工作簿
xlApp.Quit ‘结束EXCEL对象
Set xlApp = Nothing ‘释放xlApp对象
xlBook.RunAutoMacros (xlAutoOpen) ‘运行EXCEL启动宏
xlBook.RunAutoMacros (xlAutoClose) ‘运行EXCEL关闭宏
4、在运用以上VB命令操作EXCEL表时,除非设置EXCEL对象不可见,否则VB程序可继续执行其它操作,也能够关闭EXCEL,同时也可对EXCEL进行操作。但在EXCEL操作过程中关闭EXCEL对象时,VB程序无法知道,如果此时使用EXCEL对象,则VB程序会产生自动化错误。形成VB程序无法完全控制EXCEL的状况,使得VB与EXCEL脱节。
二、 EXCEL的宏功能:
EXCEL提供一个Visual Basic编辑器,打开Visual Basic编辑器,其中有一工程属性窗口,点击右键菜单的"插入模块",则增加一个"模块1",在此模块中可以运用Visual Basic语言编写函数和过程并称之为宏。其中,EXCEL有两个自动宏:一个是启动宏(Sub Auto_Open()),另一个是关闭宏(Sub Auto_Close())。它们的特性是:当用EXCEL打含有启动宏的工簿时,就会自动运行启动宏,同理,当关闭含有关闭宏的工作簿时就会自动运行关闭宏。但是通过VB的自动化功能来调用EXCEL工作表时,启动宏和关闭宏不会自动运行,而需要在VB中通过命令xlBook.RunAutoMacros (xlAutoOpen)和xlBook.RunAutoMacros (xlAutoClose) 来运行启动宏和关闭宏。
三、 VB与EXCEL的相互勾通:
充分利用EXCEL的启动宏和关闭宏,可以实现VB与EXCEL的相互勾通,其方法如下:
在EXCEL的启动宏中加入一段程序,其功能是在磁盘中写入一个标志文件,同时在关闭宏中加入一段删除此标志文件的程序。VB程序在执行时通过判断此标志文件存在与否来判断EXCEL是否打开,如果此标志文件存在,表明EXCEL对象正在运行,应该禁止其它程序的运行。如果此标志文件不存在,表明EXCEL对象已被用户关闭,此时如果要使用EXCEL对象运行,必须重新创建EXCEL对象。
四、举例:
1、在VB中,建立一个FORM,在其上放置两个命令按钮,将Command1的Caption属性改为EXCEL,Command2的Caption属性改为End。然后在其中输入如下程序:
Dim xlApp As Excel.Application ‘定义EXCEL类
Dim xlBook As Excel.Workbook ‘定义工件簿类
Dim xlsheet As Excel.Worksheet ‘定义工作表类
Private Sub Command1_Click() ‘打开EXCEL过程
If Dir("D:\temp\excel.bz") = "" Then ‘判断EXCEL是否打开
Set xlApp = CreateObject("Excel.Application") ‘创建EXCEL应用类
xlApp.Visible = True ‘设置EXCEL可见
Set xlBook = xlApp.Workbooks.Open("D:\temp\bb.xls") ‘打开EXCEL工作簿
Set xlsheet = xlBook.Worksheets(1) ‘打开EXCEL工作表
xlsheet.Activate ‘激活工作表
xlsheet.Cells(1, 1) = "abc" ‘给单元格1行驶列赋值
xlBook.RunAutoMacros (xlAutoOpen) 运行EXCEL中的启动宏
Else
MsgBox ("EXCEL已打开")
End If
End Sub
Private Sub Command2_Click()
If Dir("D:\temp\excel.bz") <> "" Then ‘由VB关闭EXCEL
xlBook.RunAutoMacros (xlAutoClose) ‘执行EXCEL关闭宏
xlBook.Close (True) ‘关闭EXCEL工作簿
xlApp.Quit ‘关闭EXCEL
End If
Set xlApp = Nothing ‘释放EXCEL对象
End
End Sub
2、在D盘根目录上建立一个名为Temp的子目录,在Temp目录下建立一个名为"bb.xls"的EXCEL文件。
3、在"bb.xls"中打开Visual Basic编辑器,在工程窗口中点鼠标键选择插入模块,在模块中输入入下程序存盘:
Sub auto_open()
Open "d:\temp\excel.bz" For Output As #1 ‘写标志文件
Close #1
End Sub
Sub auto_close()
Kill "d:\temp\excel.bz" ‘删除标志文件
End Sub
4、运行VB程序,点击EXCEL按钮可以打开EXCEL系统,打开EXCEL系统后,VB程序和EXCEL分别属两个不同的应用系统,均可同时进行操作,由于系统加了判断,因此在VB程序中重复点击EXCEL按钮时会提示EXCEL已打开。如果在EXCEL中关闭EXCEL后再点EXCEL按钮,则会重新打开EXCEL。而无论EXCEL打开与否,通过VB程序均可关闭EXCEL。这样就实现了VB与EXCEL的无缝连接。
============================
---- 一.Excel对象
---- 微软的Excel对象模型包括了128个不同的对象,从矩形,文本框等简单的对象到透视表,图表等复杂的对象.下面我们简单介绍一下其中最重要,也是用得最多的四个对象.
---- 1. Application对象
---- Application对象处于Excel对象层次结构的顶层,表示Excel自身的运行环境.
---- 2. Workbook对象
---- Workbook对象直接地处于Application对象的下层,表示一个Excel工作薄文件.
---- 3. Worksheet对象
---- Worksheet对象包含于Workbook对象,表示一个Excel工作表.
---- 4. Range对象
---- Range对象包含于Worksheet对象,表示Excel工作表中的一个或多个单元格.
================================================Excel 基础入门教程
关于VB与EXCEL的无缝连接
实现VB与EXCEL的无缝连接
实现VB与EXCEL的无缝连接1
asp连接Excel的方法
资源与教学平台的无缝衔接
vb读取excel内容
用DLL实现把数据库的记录导出到EXCEL中(VB) - 应用程序 - VB教程
无缝连接----------移动动画和代码:中国美女旗袍的神韵
关于网络连接的问题
PHOTOSHOP与无缝贴图
vb读取excel内容dd
vb读取excel内容1
VB Listview导出EXCEL功能模块
vb神童教程(续)--使用ADO Data控件连接Access的简单实例
QC与QTP的连接
VB利用ADO控件连接access数据库
VB中的Treeview来连接数据库
小三不盯无缝的鸡蛋?
Excel工作簿连接(导入)外部数据的方法
Excel工作簿连接(导入)外部数据的方法
Excel工作簿连接(导入)外部数据的方法
关于宏中 "#" 连接字符串的问题
关于镀锌管道连接问题的探讨
【千里荷塘】图片滚动特效及代码----------无缝连接