VBA实现点击按钮自选文件复制数据至当前工作薄

      为了方便日常在Excel中工作,编写了以下代码,实现在Excel工作表中点击按钮,打开指定文件夹下的任一文件,并将此文件的sheet1表格的数据复制到当前VBA代码所处的ThisWorkbook的sheet1的表格中的功能。

Excel一般未打开开发工具,可自行百度如何打开。点击开发者工具>插入>第一个控件>创建>输入以下代码:

Sub 按钮1_Click()   
  Dim f As FileDialog  '声明控件
  Dim filename$
  Set f = Application.FileDialog(msoFileDialogOpen)  '表示文件对话框的实例。
  With f  '打开文件的路径
    .InitialFileName = "E:\111"  '默认初始路径InitialFileName
    .Show
    Workbooks.Open(.SelectedItems(1)) '选择并打开默认初始路径下的文件夹中的文件
    ActiveWorkbook.Sheets(1).Cells.Copy ThisWorkbook.Sheets(1).Cells '实现复制
    ActiveWorkbook.Close  '关闭文件
  End With
End Sub

注意事项:
1、默认初始路径InitialFileName:默认打开的文件夹的路径,E:\111只是一个例子,可自行调整,此处未加入异常处理,异常处理使用情况:打开的文件夹不存在,但是此场景下,一般是打开已经存在的文件夹,故此处未设置异常处理,如有需要,可在此处修改代码。
2、ActiveWorkbook与ThisWorkbook的区别:
(1)thisworkbook指当前VBA代码所处的Workbook,
(2)Activeworkbook指当前活跃的Workbook
相同点:如果VBA代码只对本身工作簿进行操作,则一直是相同的
不同点:若VBA代码新建或打开了其它工作簿,则往往新建的或刚打开的是Activeworkbook,可以通过 “工作簿名。active”方法激活指定对象

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值