ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 3160|回复: 12

[求助] 批量复制指定格式的内容

[复制链接]

TA的精华主题

TA的得分主题

发表于 2015-5-19 17:24 | 显示全部楼层 |阅读模式
批量复制指定格式的内容.rar (12.85 KB, 下载次数: 44)


TA的精华主题

TA的得分主题

 楼主| 发表于 2015-5-21 17:12 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2015-5-22 12:27 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
可在2003版本下试试如下代码(未经优化):
  1. Sub PickRedRange()
  2.   Dim sPat As String, sStr As String
  3.   Dim nNum As Long, wDoc As Document, wRng As Range
  4.   With Application.FileDialog(msoFileDialogFolderPicker)
  5.     If .Show <> -1 Then Exit Sub
  6.     sPat = .SelectedItems(1) & ""
  7.   End With
  8.   sStr = ""
  9.   Application.ScreenUpdating = False
  10.   With Application.FileSearch
  11.     .LookIn = sPat
  12.     .FileType = msoFileTypeWordDocuments
  13.     For nNum = 1 To .Execute
  14.       sStr = sStr & Mid(.FoundFiles(nNum), Len(sPat) + 1, Len(.FoundFiles(nNum)) - Len(sPat) - 4) & vbCrLf
  15.       Set wDoc = Documents.Open(.FoundFiles(nNum), Visible = False)
  16.       Set wRng = wDoc.Range
  17.       With wRng.Find
  18.         .ClearFormatting
  19.         .Font.Color = wdColorRed
  20.         Do While .Execute
  21.           sStr = sStr & wRng & vbCrLf
  22.         Loop
  23.       End With
  24.       wDoc.Close False
  25.     Next
  26.   End With
  27.   Application.ScreenUpdating = True
  28.   ActiveDocument.Range.InsertAfter vbCrLf & sStr
  29. End Sub
复制代码
注:类似问题论坛中应该有现成案例可参考的,可通过搜索查找出来。

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2015-5-22 19:37 | 显示全部楼层
版主代码编得真好!我水平太低实在看不懂!——但运行出错,请版主重审(打开源文件夹后,确定,并不能打开任何文件;还有,visible后面应该加冒号吧。)——另外,楼主会不会用VBA宏代码?应该说一下。

TA的精华主题

TA的得分主题

发表于 2015-5-22 19:39 | 显示全部楼层
另外,我再问一下 版主:是否有一个小程序,能自动把VBA宏代码放到VBE环境中,让不懂得用VBA宏代码的朋友,只须点击此小程序,就可以自动运行某个宏?

TA的精华主题

TA的得分主题

发表于 2015-5-22 20:49 | 显示全部楼层
再次在2003版本下运行未发现错误啊。413191246se 是否是在2007或更高版本测试的?
谢谢指正 visible:=false 错误!当时写得有点仓促未仔细检查。
“小程序”的想法很好!如果能实现将会非常人性化!目前我似乎没有见过,应该有高手能解决的。不知道VBS能否实现?而且宏安全性可能还是一道屏障。

TA的精华主题

TA的得分主题

 楼主| 发表于 2015-5-22 22:31 | 显示全部楼层
kqbt 发表于 2015-5-22 12:27
可在2003版本下试试如下代码(未经优化):
注:类似问题论坛中应该有现成案例可参考的,可通过搜索查找出 ...

我在XP运行成功,谢谢

TA的精华主题

TA的得分主题

 楼主| 发表于 2015-5-23 14:28 | 显示全部楼层
kqbt 发表于 2015-5-22 12:27
可在2003版本下试试如下代码(未经优化):
注:类似问题论坛中应该有现成案例可参考的,可通过搜索查找出 ...

老大:要是能带格式复制过来就更好了!如何改?

TA的精华主题

TA的得分主题

发表于 2015-5-25 08:38 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
ww0000 发表于 2015-5-23 14:28
老大:要是能带格式复制过来就更好了!如何改?

若要保留格式,可通过宏完成 Ctrl+C  → Ctrl + V 的过程,不过效率将会受到影响。

TA的精华主题

TA的得分主题

发表于 2015-5-25 12:50 | 显示全部楼层
kqbt 发表于 2015-5-22 20:49
再次在2003版本下运行未发现错误啊。413191246se 是否是在2007或更高版本测试的?
谢谢指正 visible:=fals ...

使用vbs可以跳过安全性。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2025-1-16 05:46 , Processed in 0.048527 second(s), 14 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表