转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 软件使用 >> 办公软件 >> 正文
使用Vba读取已关闭的Excel工作薄数据到当前工作表单元格之简单范例         ★★★★

使用Vba读取已关闭的Excel工作薄数据到当前工作表单元格之简单范例

作者:闵涛 文章来源:闵涛的学习笔记 点击数:2019 更新时间:2009/6/9 2:18:59

  VBA功能强大,用途广泛,值得研究学习!

  本文介绍如题所示的操作过程;

  范例环境:

  在F:\盘根目录下,存在一工作薄,名称为“成绩表.xls”,其对应的路径是:“F:\成绩表.xls”;

  该工作薄第一个工作表名称是:Sheet1,里面存放的是学生期末考试成绩,其中,E列从E3开始,就是学生的考试成绩;

  下面我们要实现的是,在关闭F:\成绩表.xls情况下,打开Excel软件,新建一工作薄,在其工作表中的指定单元格,读取F:\成绩表.xls中的指定的成绩数据进行填充;

  ①:在新建的工作表中直接按下组合键:Alt+F11,打开Microsoft Visual Basic窗口;如果打开的窗口没有出现代码窗口,那么,请在当前窗口执行操作:“视图”→“代码窗口”;

  ②:在代码窗口中输入如下的代码:

Private Function GetValue(path, filename, sheet, ref)
    ' 从关闭的工作薄返回值
    Dim MyPath As String
    '确定文件是否存在
    If Right(path, 1) <> "\" Then path = path & "\"
    If Dir(path & filename) = "" Then
        GetValue = "无法找到指定的Excel文件"
        Exit Function
    End If
    '创建公式
    MyPath = "'" & path & "[" & filename & "]" & sheet & "'!" & Range(ref).Range("A1").Address(, , xlR1C1)
    '执行EXCEL4宏函数
    GetValue = Application.ExecuteExcel4Macro(MyPath)
End Function

'函数参数说明
'-----------------------------------------------------------------
'path:文件路径
'filename:文件名称
'sheet:工作表名称
'ref: 单元格区域
'-----------------------------------------------------------------
Sub GetCloseXlsValue()
    Range("C3").Value = GetValue("F:\", "成绩表.xls", "Sheet1", "E8")
End Sub

  如下图:


  上述代码的功能是:读取F:\成绩表.xls中E8单元格的数据填充到当前EXCEL的C3单元格中;

  上述代码的诠释已做说明,不再阐述!

  之后直接按下F5运行代码,或点击代码运行按钮执行代码的操作,返回EXCEL窗口,即可看到填充效果;

  知识扩展:

  如何对关闭的工作薄数据进行求和再填充到当前工作表?

  可将Range("C3").Value = GetValue("F:\", "成绩表.xls", "Sheet1", "E8")

  改为:Range("C3").Value = GetValue("F:\", "成绩表.xls", "Sheet1", "E8")+ GetValue("F:\", "成绩表.xls", "Sheet1", "E9")+ GetValue("F:\", "成绩表.xls", "Sheet1", "E10")

        这样,对E8,E9,E10三个单元格进行相加求和之后,再填充过来;

        如果想填充其他单元格数据到当前工作表的其他单元格,只需要修改来处即可:

  ①:Range("C3").Value ,修改C3

  ②:GetValue("F:\", "成绩表.xls", "Sheet1", "E8"),修改盘符,文件名,工作表名,E8单元格

  如果想使用更智能的办法,必须使用循环语句来控制,本例暂且不作介绍;


[VB.NET程序]GSM短信模块库函数,可以用VB,VC,调用简单实用  [C语言系列]使用C#实现ADSL自动拨号
[Web开发]狂人采集器规则使用详解  [电脑技术]windows7快捷键使用大全
[办公软件]PowerPoint模板使用经验之谈  [办公软件]如何在PowerPoint中使用(插入)Media Player控件播…
[办公软件]如何在PowerPoint中使用(插入、创建)书签及书签的…  [办公软件]如何在PowerPoint中插入(使用)条形码
[办公软件]PowerPoint做交互课件之弃用VBA  [办公软件]如何在PowerPoint中制作模板并使用模板
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · 办公软件  · 系统软件
    · 常用软件  · 聊天工具
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台