ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

如何自定义插入图片在宏里的名称?

[复制链接]

TA的精华主题

TA的得分主题

发表于 2005-7-13 11:53 | 显示全部楼层 |阅读模式

这可能是一个比较低级的问题,我看了2天还不会,请各位帮忙。问题描述如下:

1:目的:为了把很多图储存在一个doc(SourceBmp.doc)里,供其他doc(Run.doc)调用。

2:方法:打开SourceBmp.doc,把一幅图粘贴在上面,从图上移开光标,菜单操作工具——宏——录制新宏,点击图像,使之被选中,停止录制。菜单操作工具——宏——VB编辑器,可以看到如下代码:

sub Macro2() ActiveDocument.Shapes("Group 2").Select End Sub

此时我才知道这幅图的名称是"Group 2",目的达到。这时我就可以把这个宏删除了。

3:问题:个人感觉这个方法很笨,而且我想自己命名这个图像的名字,现在都是“Group n”的名字太不好记忆了,我想给他取有实际意义的名字,如OpenFileBmp等等。

4:我的环境:win2000+Office2000

多谢各位的帮忙!

TA的精华主题

TA的得分主题

 楼主| 发表于 2005-7-13 15:30 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2005-7-15 09:29 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2005-7-15 13:13 | 显示全部楼层

呵呵,搜索一下,论坛中还是很多的。

请参考一下:

'* +++++++++++++++++++++++++++++ '* Created By I Love You_Word!@ExcelHome 2005-7-15 13:17:05 '仅测试于System: Windows NT Word: 10.0 Language: 2052 '^The Code CopyIn [ThisDocument-ThisDocument]^' '* -----------------------------

Option Explicit Sub Example() Dim MyPicture As Shape Set MyPicture = ActiveDocument.Shapes.AddPicture(Anchor:=Selection.Range, FileName:= _ "C:\Documents and Settings\My Documents\My Pictures\BP1.gif") With MyPicture .Name = "MyPicture" .Width = Word.CentimetersToPoints(5) .Height = Word.CentimetersToPoints(5) .Left = wdShapeCenter .Top = Word.CentimetersToPoints(2) End With '通常情况下无需选定,直接将方法或者属性作用于MyPictrue对象上即可.如上面 ' MyPicture.Select ActiveDocument.Shapes("MyPicture").Select End Sub '----------------------

TA的精华主题

TA的得分主题

 楼主| 发表于 2005-7-20 10:36 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

多谢 守柔的回复。我在Word里加入2个Button,代码如下

Private Sub CommandButton1_Click() ActiveDocument.Shapes("Group 2").Select '如果名字已经改成了Chm_Junior_1,那么应该报错才对,但是结果却能够正确选择到图像上,那么是不是说这一幅图有2个Name?这不符合正常的编译原理。 ActiveDocument.Shapes("Group 2").Name = "Chm_Junior_1"

MsgBox (ActiveDocument.Shapes("Group 2").Name)

'结果是Chm_Junior_1 End Sub

Private Sub CommandButton2_Click() ActiveDocument.Shapes("Chm_Junior_1").Select MsgBox (ActiveDocument.Shapes("Chm_Junior_1").Name)

'结果还是Chm_Junior_1 End Sub

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-9-21 22:10 , Processed in 0.043689 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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