求助!急急急。。。怎样用VB打开电脑任意位置的excel。并把excel中的数据放入二维数组??

我一见你就傻笑 2014-01-21 05:36:36
各位大神好:
我正在编写一个程序,需要点击一个按钮,用VB打开存在电脑任意位置的某个excel,请各位大神注意,不能只打开存在某盘某文件夹的,需要是电脑任意位置都可以的。然后把每个单元格中的数据依次放入一个数组。挺紧急的,跪求各位帮忙!感激不尽
...全文
209 点赞 收藏 5
写回复
5 条回复
赵4老师 2014年01月27日
处理命令行,在excel文件上按住shift键点鼠标右键,选打开方式、选择程序、浏览、找到你的exe程序、勾选始终使用选择的程序打开这种文件、确定。 以后只要在excel文件上双击鼠标左键,就会用你的程序打开excel文件了。
回复 点赞
蓝天630902 2014年01月22日

Private Sub CommandButton1_Click()
    Dim fldr As FileDialog
    Set fldr = Application.FileDialog(msoFileDialogFilePicker)
    Dim vSItem As Variant
    With fldr
        If .Show = -1 Then
            For Each vSItem In .SelectedItems
                With GetObject(CreateObject("Scripting.FileSystemObject").GetFileName(vSItem))
                    crr = .Sheets(1).UsedRange '把每个单元格中的数据一次性次放入一个数组
                    .Close (False)
                End With
            Next vSItem
        Else
        End If
    End With
    Set fd = Nothing
End Sub
回复 点赞
of123 2014年01月22日
电脑任意位置是什么意思,无非是文件系统能够实现的硬盘、U 盘、光盘以及网络文件吧? 总不至于让程序自己随机查找打开吧? 用 CommonDialog 让用户指定不行吗?
回复 点赞
vansoft 2014年01月22日
好象有个ShellExecute的API吧/
回复 点赞
一如既往哈 2014年01月21日
用workbook.open语句可以打开任意位置的xls文件 至于单元格的数据放入数组,请参考下面的例子:
Sub test()
    Dim ww, a
    ww = Range("a1:a16")
    a = Application.WorksheetFunction.Transpose(ww)
    Debug.Print UBound(a), Join(a, "*")
End Sub
回复 点赞
发动态
发帖子
VB基础类
创建于2007-09-28

2754

社区成员

19.7w+

社区内容

VB 基础类
社区公告
暂无公告