首页 | 新闻资讯 | 软件应用 | 图形图像 | 网络应用 | 硬件学堂 | 程序开发 | 安全中心 | 素材下载 | 作者专区 | 学院论坛
精选专题 | 精美壁纸 | 专家答疑 | Flash剧场 | Photoshop | 名词解释 | 梦幻桌面 | PS高手进阶 | QQ区 | 图书 | 黑客教材
Flash教程| 卡通制作 | AutoCAD | 3DMax实例 | PS视频教程| 网页制作 | CorelDRAW| Firework | 滤镜与实例 | 全部视频教程
当前位置:eNet硅谷动力 > 学院频道 > VB

用EXCEL组件简化VB编程
2004-02-20 16:33 来源:eNet论坛
【简 介】
本文介绍怎么使用EXCEL组件简化VB编程的一种方法/
    
加入收藏  设为首页

  使用编辑器步骤如下:进入EXCEL97后,用鼠标点击菜单栏中的“工具”按钮,选择“宏”,再选择“VB编辑器”。即出现类似于VB的标准窗口。

  由于“VB编辑器”的编辑界面非常类似于“Visual Basic”的界面。所以我们可以从它的控件“工程资源管理器”中插入需要的“添加用户窗体、添加模块、添加类模块”,并且从“属性窗口”中加入属性。

   例如,我们可以制定一个表格处理定位的窗体,通过程序来实现数据定位和循环调用过程。

Public decide As Boolean

   Private Sub CommandButton1_Click()

    exchange

    If decide Then

     Unload Me

    Else

     TextBox1.Text = ""

    End If

   End Sub

   Sub exchange()

    If Not decideday(TextBox1.Text) Then GoTo error

     decide = True

     Dim sql As String

     Dim db As Database

     Dim rs As Recordset

     sql = "SELECT * From 数据表"

     sql = sql + " WHERE (((数据表.日期)=#" + TextBox1.Text
         + "#))"

     Set db = OpenDatabase(Application.ThisWorkbook.Path
                 + "gl.mdb")

     Set rs = db.OpenRecordset(sql, dbOpenDynaset)

     If rs.EOF Then

      MsgBox ("此日期无数据")

      Exit Sub

     End If

     daima1 = rs.Fields("代码")

     (以下为数据在表格中的定位及调用)

      Sheet1.Range("e5").Value = rs.Fields("日期")

     Sheet1.Range("f7").Value = rs.Fields("数据表记录")

     Sheet1.Range("d12").Value = rs.Fields("实数100")

     Sheet1.Range("d14").Value = rs.Fields("实数50")

     Sheet1.Range("d16").Value = rs.Fields("实数10")

     Sheet1.Range("d18").Value = rs.Fields("实数5")

     Sheet1.Range("d20").Value = rs.Fields("实数2")

     Sheet1.Range("d22").Value = rs.Fields("实数1")

     Sheet1.Range("h12").Value = rs.Fields("其他100")

     Sheet1.Range("h14").Value = rs.Fields("其他50")

     Sheet1.Range("h16").Value = rs.Fields("其他10")

     Sheet1.Range("h18").Value = rs.Fields("其他5")

     Sheet1.Range("h20").Value = rs.Fields("其他2")

     Sheet1.Range("h22").Value = rs.Fields("其他1")

     Sheet1.Range("d38").Value = Sheet1.Range("d12").Value *
             100 + Sheet1.Range("d14").Value * 50 +
             Sheet1.Range("d16").Value * 10 +
             Sheet1.Range("d18").Value * 5 +
             Sheet1.Range("d20").Value * 2 +
             Sheet1.Range("d22").Value

     Sheet1.Range("h38").Value = Sheet1.Range("h12").Value *
             100 + Sheet1.Range("h14").Value * 50 +
             Sheet1.Range("h16").Value * 10 +
             Sheet1.Range("h18").Value * 5 +
             Sheet1.Range("h20").Value * 2 +
             Sheet1.Range("h22").Value

     Dim sql1 As String

     Dim db1 As Database

     Dim rs1 As Recordset

     sql1 = "SELECT * From 代码字典"

     sql1 = sql1 + " WHERE (((代码字典.代码)=" amp; daima1 amp; "))"

     Set db1 = OpenDatabase(Application.ThisWorkbook.Path +
                 "gl.mdb")

     Set rs1 = db1.OpenRecordset(sql1, dbOpenDynaset)

     Sheet1.Range("h41").Value = rs1.Fields("代码字典名称")

   Exit Sub

   error:

    MsgBox ("日期输入错误")

    decide = False

   End Sub

   Private Sub TextBox1_Change()

   End Sub

   Private Sub UserForm_Activate()

    dyaaa.Top = 30

    dybbb.Left = 230

   End Sub

  VB是标准的面向对象编程语言可视编程,采用事件驱动的编程技术。所以可以直接调用VB编辑器所写的程序,简化以往较为繁琐的一些步骤。

   由于用户的需求较多,VB可以通过直接调用OFFICE组件EXCEL,进而直接调用VB编辑器实现表格处理,以简化程序的编写。

   VB程序中直接调用EXCEL 的格式如下:

Private Sub menudy_Click(Index As Integer) 这是一个打印菜单

   Select Case Index

   Case 0

   On Error GoTo Last

   diaoyong = Shell("D:Program FilesMicrosoft OfficeOfficeEXCEL.EXE c:glgl.xls", 1)

   Case 1

   On Error GoTo Last1 作为空表处理

     diaoyong = Shell("D:Program FilesMicrosoft
            OfficeOfficeEXCEL.EXE c:glgly.xls", 1)

   Case 3

     EXIT

   End Select

   Exit Sub

   Last:

    diaoyong = Shell("EXCEL.EXE c:glgl.xls", 1)

    Exit Sub

   Last1:

     diaoyong = Shell("EXCEL.EXE c:glgly.xls", 1)

   End Sub

   具体的表格数据处理可以由EXCEL自动完成,因此就简化VB编程的步骤,并且节约调试程序和定位调用的时间。这样就可以把Visual Basic和 EXCEL有机的结合在一起,使编程更加实用。



关键字:  
您对这篇文章的看法是:    喜欢 反感 支持 反对 加油 鄙视 学习 打击 佩服 漂亮 路过 发表评论
视频教程】 【专题汇总】 【不懂就问我关闭窗口

360安全卫士 V5.1.1正式版发布!
Photoshop给模特美腿加上质感肤色
了解差距 国外27款创意名片设计赏
认清五种被忽视的黑客攻击方式
QQ音乐播放器2009正式版今天发布!
相关文章
 本栏目最新文章
·编写电话拨号程序时一点小技巧
·VB开发应用软件之写在动手之前
·用VB实现“木马”式隐形运行程序
·怎样实现在VB窗体中有Html页面
·用VB编程实现图像的熠熠生辉效果
 精彩回放
·3DSMAX打造书本翻开效果
·共享上网技巧应用四则
·陪酒女浸泡在酒里的青春
·美女的性感靓丽婚纱设计
·妖冶身姿 死或生3壁纸
·剿灭Win XP下的29个烦恼
·黑客必备 NET命令大全
·用PS制作精致绝伦的红酒
 精彩推荐
 今日软件下载
杀毒软件免费随便用
瑞星全功能安全软件2009 基于“云安全”策略和“智能主动防御”技术开发.
www.rising.com.cn
 往日推荐
·推荐“美图秀秀”就能赚Q币
·五大搜索引擎横向评测
·防御计算机病毒十大步骤

论坛精华
·史上最强最多 photo 
·photoshop完美扣图教 
·网络学院flash教程目 
·Photoshop下载大全 
·PhotoShop实例精选电 
·打包笔刷 附图的~~ 
热点推荐
绘制逼真金蛋
浪漫婚纱照片
Flash视频编程
Ulead GIF教程
热点关注
·Flash CS4 制作经典小游戏
·C语言程序设计视频教程
·PHP+MYSQL开发视频教程
·Flash CS4从入门到精通教程
·服装设计与效果图绘制教程
·21视频之Fireworks8网页制作
·Vray高级实例应用视频教程
·CorelDRAW14入门到高级教程
·Vray高级实例应用视频教程
全国计算机等级考试二级(VB语言)
往日推荐
网站重构设计
鹏哥C#教程
服装设计教程
PS唯美风景
焦点关注