前言

老姐让我帮她写个程序,要在Excel中插入附件啥的,不然她五一放假就要加班了,所以我就在加班的期间查了查资料,一开始理解错题意,以为是要把PDF转换为Excel,还想着要用Python来写,后面发现,是要插入附件,可以用VBA来写。

由于微软Office软件的普及,人们常见的办公软件Office软件中的Word、Excel、Access、Powerpoint都可以利用VBA使这些软件的应用更高效率,例如:通过一段VBA代码,可以实现画面的切换;可以实现复杂逻辑的统计(比如从多个表中,自动生成按合同号来跟踪生产量、入库量、销售量、库存量的统计清单)等。 (百度百科)

环境配置

为了使用VBA,我们需要开启Excel的开发者工具

文件 -> 选项 - > 自定义功能区 -> (右侧的)主选项卡 -> 勾选开发工具 -> 确定

回到主界面,点击

开发工具 -> 宏 -> 宏名 -> 输入 batchImportObject -> 创建 -> 进入 Visual Basic代码编辑区

复制粘贴一下代码,全选覆盖掉刚才创建的代码

Sub batchImportObject()
'Columns(1).Delete
On Error Resume Next
Dim f As String
Dim file() As String
Dim i, k, x
x = 1
i = 1: k = 1
ReDim file(1 To i)
file(1) = InputBox("请输入要查找的文件夹:") & "\"
Do Until i > k
f = Dir(file(i), vbDirectory)
Do Until f = ""
If InStr(f, ".") = 0 Then
k = k + 1
ReDim Preserve file(1 To k)
file(k) = file(i) & f & "\"
End If
f = Dir
Loop
i = i + 1
Loop
For i = 1 To k
f = Dir(file(i) & "*.*")
Do Until f = ""
'Range("a" & x) = f
ActiveSheet.OLEObjects.Add(Filename:=file(i) & f, _
Link:=False, _
DisplayAsIcon:=True, _
IconIndex:=0, _
Left:=10, Top:=10 + x, _
IconLabel:=file(i) & f).Select
x = 50 + x
f = Dir
Loop
Next
End Sub复制代码

而后保存文件,保存文件的具体步骤请看 这里

大体的意思就是保存的文件类型需要更改为带有宏的文件

之后回到Excel中,点击

宏 -> 选择 batchImportObject -> 在弹出的输入框中输入所需要导入文件的文件夹路径 -> 等待或卡顿一段事件 -> 理论上就大功告成了

注意

  • 文件夹下的所有文件都会被导入,所以请保证都是需要导入的文件*
  • 如果导入文件过大或者数量太多,程序可能无响应,等待一段时间应该就可以了 *

转载于:https://juejin.im/post/5ae67964f265da0ba351d316

Excel使用VBA批量插入Object相关推荐

  1. 【Excel】VBA批量修改文件名

    Excel:VBA批量修改文件名 Dim filePath As Variant '定义filepath为变量 Dim obj As Object '定义obj为变量对象 Dim fld, ff, g ...

  2. Excel根据名字批量插入图片

    Excel根据名字批量插入图片 一.如果图片名称与Excel名称不一致时(如下图1) (图1) 1. 先将文件名批量形成文档txt,先新建一个文本文档1.TXT 打开后输入批处理命令:dir . &g ...

  3. 利用CAD VBA批量插入多段线

    CAD VBA批量插入多段线,利用一维动态数组 Sub aa() '定义一个运行过程 Dim arr() As Double '定义一个空的动态数组 m = 4 '随便定一个值 nn = Array( ...

  4. Excel 2010 VBA 入门 103 利用VBA批量插入图片

    目录 示例 代码: Shapes.Shape和 ShapeRange Shapes对象插入图形的方法 Excel的坐标 图形大小的调整 获取图片的原始大小 将图片按比例缩放至单元格 图片批量插入的步骤 ...

  5. Excel 文件怎么批量插入首页、扉页、尾页?怎么将某个 Excel 文件批量插入到其它 Excel 文件的指定位置?

    概要:在我们日常办公中,经常会碰到需要给一批 Excel 文件批量插入首页或者尾页,或者在指定的位置插入新的 Sheet 的需求.「我的ABC软件工具箱」就实现了批量在指定位置插入新的内容的功能,可以 ...

  6. excel表格怎么调整行高和列宽_如何在Excel中竖向批量插入图片,这个简单方法你知道吗...

    酌酒与君君自宽,人情翻覆似波澜.白首相知犹按剑,朱门先达笑弹冠.草色全经细雨湿,花枝欲动春风寒.世事浮云何足问,不如高卧且加餐. --[唐]王维<酌酒与裴迪> 不知道大家有没有遇到过这种情 ...

  7. c# 读取Excel,并批量插入到数据库

    public static string BD_MaterialImport(string FilePath){try{#region 读取工作表,导入数据 //此连接可以操作.xls与.xlsx文件 ...

  8. Excel使用VBA自动调整插入图片大小到单元格

    文章目录 前言 VBA是什么? 使用步骤 1.新建一个xls表格 2.开启宏功能 3.打开宏界面 4.复制粘贴代码 把宏命令添加到快捷访问上 总结 前言 最近突然要做大量带图片的Excel表格,Off ...

  9. 如何在Excel中用VBA批量生成“照相机“图片

    什么?你不知道照相机是什么??那参见我这篇文章吧 Excel做数据海报 需求描述 目前的状况是这样的,我有1个总表,26个子表.26个子表是按照总表的某个字段拆分出来的.然后我需要生成26个子表的照相 ...

最新文章

  1. CentOS下实现postgresql开机自启动
  2. Hibernate简介2
  3. win7系统控制面板下的打开或关闭windows功能需要打开哪些功能
  4. 春节回来了,你收获了什么?
  5. 集群管理工具KafkaAdminClient——改造
  6. 移动端小程序 腾讯地图sdk 当前位置 地址你解析 距离计算
  7. RTX5 | 线程管理04 - 线程加入osThreadJoin
  8. 流式大数据计算实践(4)----HBase安装
  9. Intel 64 and IA-32 Architectures Instruction Format 指令格式
  10. 亚马逊力推以太坊,微软谷歌准备跟进!
  11. 最长公共子序列lcs 51nod1006
  12. FlashFXP设置文件传输速度
  13. 项目管理经验-豆知识
  14. 拼多多商家如何运营好店铺?商家如何一键打单?
  15. Js节流(防连点)和防抖动
  16. 小程序开发常见错误及排除方法
  17. java hbase 批量查询数据_java Hbase 批量读取
  18. python循环语句打印输出1-10_python循环语句的一些题型
  19. 微型计算机如何跳线,PCB设计之如何使用跳线
  20. 02-微信小程序开发-模板与配置

热门文章

  1. 产品经理之路:懂车帝APP产品体验报告
  2. @InitBinder
  3. Kubernetes开发(5)-validateadmission练手
  4. 网赚(兼职)--下载APP赚钱
  5. python中对象的特性_python中类与对象之继承,python类和对象理解,面对对象的三大特性之...
  6. String类中的面试常考点
  7. twitch 亚马逊云_如何使用Amazon Prime订阅Twitch Streamer
  8. cocos2dx的runAction: 重复执行,多个动作连接执行,多个动作同时执行的实现(lua的应用)
  9. 扎克伯格引发讨论:创始人是否应该担任CEO?
  10. 笑傲江湖ol更新服务器正在维护,笑傲江湖ol2016年12月21日更新内容汇总介绍