Dzwebs.Net

撰写电脑技术杂文十余年

利用VBA从已关闭的工作薄中取得某一工作表某一单元格数值

Admin | 2008-1-14 19:32:28 | 被阅次数 | 10903

温馨提示!

如果未能解决您的问题,请点击搜索;登陆可复制文章,点击登陆

网上别人写的共享代码如下:

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

'参数说明
'-----------------------------------------------------------------
'path:文件路径
'file:文件名称
'sheet:工作表名称
'ref: 单元格区域
'-----------------------------------------------------------------

Sub kk()
Range("a1").Value = GetValue("D:\", "book2.xls", "Sheet1", "b2")
End Sub


直接读取c:\test.xls(不打开)中sheet1.a1的值另一种参考代码 (比一楼的写法简单许多)
Sub TestGetValue()
str0 = "'C:\[test.xls]Sheet1'!R1C1"
MsgBox ExecuteExcel4Macro(str0)
End Sub


该杂文来自: Excel杂文

上一篇:Excel工作表常用操作大总结下篇

下一篇:Excel斜线表头的另类绘制—画三条以上的斜线

网站备案号:

网站备案号:滇ICP备11001339号-7

版权属性:

Copyright 2007-2021-forever Inc. all Rights Reserved.

联系方式:

Email:dzwebs@126.com QQ:83539231 访问统计