ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[分享] 标签(宏)——最新、实用

[复制链接]

TA的精华主题

TA的得分主题

发表于 2013-10-29 21:07 | 显示全部楼层 |阅读模式
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
* 前两天,单位有人让制作几个标签,结果,用通用模板中的“标签”宏制作后,出入很大,不实用,所以这两天考虑重新制作这个宏,其实,这个宏多数是录制宏的结合,编的很少,但感觉很实用了,起码本单位以后再用就方便多了。
* 请注意:请把要制作标签的文字放在一个表格中,且该表格要仅有一列!这样让《标签宏》处理它,纵向/横向就都好办了。
* 应用此宏后,纵向标签可以设置字符缩放为120%或150%让字体变得修长些;横向标签可以设置为90%让字体变得修长些;同时,字体没有变化,请自行选用中文字体。
* 此宏其实还可以再精简些,但为了保持完整性,并继续观察是否好用(如果某条语句出错,请在宏前面加上 on error resume next)。——比原来的此宏减少一半代码。
  1. Sub 标签()
  2.     If Selection.Information(wdWithInTable) = False Then MsgBox "请将光标放在标签数据源表格中!", vbOKOnly + vbCritical, "标签": End
  3.     If Selection.Tables(1).Columns.Count <> 1 Then MsgBox "标签数据源表格仅允许有一列!", vbOKOnly + vbCritical, "标签": End
  4.     Dim i As String
  5.     i = MsgBox("是:纵向标签(书脊)    否:横向标签(封面)    取消:放弃", vbYesNoCancel + vbExclamation, "标签")
  6.     If i = vbCancel Then End
  7.     Selection.Tables(1).Range.Copy
  8.     Documents.Add.Content.Paste
  9.     Selection.Tables(1).Select
  10.     Selection.Font.Bold = True
  11.     Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter
  12.     Selection.Cells.VerticalAlignment = wdCellAlignVerticalCenter
  13.     With ActiveDocument.PageSetup
  14.         .TopMargin = CentimetersToPoints(2)
  15.         .BottomMargin = CentimetersToPoints(2)
  16.         .LeftMargin = CentimetersToPoints(1)
  17.         .RightMargin = CentimetersToPoints(1)
  18.     End With
  19.     If i = vbYes Then '纵向标签
  20.         ActiveDocument.PageSetup.Orientation = wdOrientLandscape
  21.         Selection.Tables(1).Rows.Alignment = wdAlignRowCenter
  22.         Selection.Rows.HeightRule = wdRowHeightExactly
  23.         Selection.Rows.Height = CentimetersToPoints(3)
  24.         Selection.Orientation = wdTextOrientationHorizontalRotatedFarEast
  25.         Selection.ParagraphFormat.Alignment = wdAlignParagraphDistribute
  26.         Selection.Borders(wdBorderLeft).LineStyle = wdLineStyleNone
  27.         Selection.Borders(wdBorderRight).LineStyle = wdLineStyleNone
  28.         Selection.Font.Size = 48
  29.     ElseIf i = vbNo Then '横向标签
  30.         Selection.Tables(1).AutoFitBehavior (wdAutoFitWindow)
  31.         Selection.Tables(1).AutoFitBehavior (wdAutoFitWindow)
  32.         ActiveDocument.Range(Start:=Selection.End, End:=Selection.End).InsertBreak Type:=wdSectionBreakContinuous
  33.         With Selection.PageSetup.TextColumns
  34.             .SetCount NumColumns:=2
  35.             .EvenlySpaced = True
  36.             .LineBetween = False
  37.             .Width = CentimetersToPoints(8.76)
  38.             .Spacing = CentimetersToPoints(1.48)
  39.         End With
  40.         Selection.Rows.HeightRule = wdRowHeightExactly
  41.         Selection.Rows.Height = CentimetersToPoints(5)
  42.         Selection.Font.Size = 60
  43.     End If
  44.     ActiveWindow.ActivePane.View.Zoom.PageFit = wdPageFitBestFit
  45.     ActiveWindow.ActivePane.View.Zoom.PageFit = wdPageFitFullPage
  46. End Sub
复制代码
标签宏数据源--示例文件 下载: 标签数据源(示例).rar (3.73 KB, 下载次数: 304)

TA的精华主题

TA的得分主题

发表于 2013-10-29 21:10 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-10-29 21:16 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
补:
* 纵向标签:制作完毕后,可以显示表格虚框,拖拽表格左右边框线,让表格变大或变小以此改变表格中标签的长度及文字之间的距离。
* 本次标签采用表格实线框,请各位朋友使用此宏打印后,用剪刀或格尺、刀片沿着表格线裁剪即可。
* 有不同使用意见或建议的朋友,请跟帖提出来,大家共同改进、提高。水平较低,难免有错漏之处,请多多包涵!谢谢!

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-10-29 21:19 | 显示全部楼层
* 原宏代码共 112 行,现在共 44 行,减少了一半多,但是比过去更为实用、精简(其实还可以再精简几行)。

TA的精华主题

TA的得分主题

发表于 2013-10-30 14:48 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2013-10-31 10:37 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2013-12-10 15:05 | 显示全部楼层
可以自动保存在同一目录里吗?

TA的精华主题

TA的得分主题

发表于 2016-9-11 21:18 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2016-9-12 08:12 | 显示全部楼层
菜菜,一楼说的明白,试试就知道了!

TA的精华主题

TA的得分主题

发表于 2017-9-1 22:28 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

关闭

最新热点上一条 /1 下一条

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

GMT+8, 2024-4-19 05:40 , Processed in 0.048063 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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