Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 5126|回复: 13

[已解决]如何返回shape对象名字的中文部分

[复制链接]
发表于 2012-1-17 15:10 | 显示全部楼层 |阅读模式
本帖最后由 爱疯 于 2012-2-12 15:37 编辑


MsoAutoShapeType 枚举.rar (196.67 KB, 下载次数: 12)
发表于 2012-1-17 15:40 | 显示全部楼层
是汉化的问题?????
没改代码,只动了下名字就变求了
1.gif

评分

参与人数 1 +16 金币 +6 收起 理由
爱疯 + 16 + 6 新发现,学习

查看全部评分

回复

使用道具 举报

发表于 2012-1-17 15:44 | 显示全部楼层
虽然"矩形"就是"Rectangle",搞求不懂
回复

使用道具 举报

 楼主| 发表于 2012-1-17 15:56 | 显示全部楼层
本帖最后由 爱疯 于 2012-1-17 16:11 编辑
上清宫主 发表于 2012-1-17 15:44
虽然"矩形"就是"Rectangle",搞求不懂


通过(手动)修改shape的名字,就能“所见即所得”,学习了{:201:}


这样试
Sub a()
    Sheet1.Shapes(2).Name = Sheet1.Shapes(2).Name & "加点中文"
    MsgBox Sheet1.Shapes(2).Name
End Sub
结果不行。


另,要能读取“名称框”里内容就好了。可没找着读取办法

1楼问题,是想让这个附件里能输出中文名字 MsoAutoShapeType 枚举.rar (196.67 KB, 下载次数: 15)

点评

03版出英文,07版出中文了,去掉数字应该不难吧,只要中文可以到07版试一下。  发表于 2012-1-17 16:16
我的输出直接全英文加数字,没有一个汉字。  发表于 2012-1-17 16:14
回复

使用道具 举报

 楼主| 发表于 2012-1-17 16:16 | 显示全部楼层
是的,英文+空格+数字
空格和数字,可去除掉,但剩余部分,无法让英文变中文。

点评

用07版的就可以变成中文了。  发表于 2012-1-17 16:23
回复

使用道具 举报

 楼主| 发表于 2012-1-17 16:19 | 显示全部楼层
对于1楼,07返回"button 1"
回复

使用道具 举报

发表于 2012-1-17 16:21 | 显示全部楼层    本楼为最佳答案   
  1. Sub test1()
  2. Dim i As Integer, h As Integer, r As Integer
  3. Dim shp As Shape
  4. Dim RegEx

  5. Call test0
  6. r = 1
  7. For i = 1 To 137
  8.   '默认width是54磅,所以图片width也取54
  9.   '默认height是13.5磅,所以图片height取其4倍
  10.   Set shp = ActiveSheet.Shapes.AddShape(i, 0, h, 54, 54)
  11.   With CreateObject("VBSCRIPT.REGEXP")
  12.     .Global = True
  13.     .Pattern = "[^\u4e00-\u9fa5]"
  14.     Cells(r, 3) = .Replace(shp.Name, "")
  15.   End With
  16.   'Cells(r, 3) = shp.Name '用作存放shape对象名称的单元格行号
  17.   r = r + 6 '每次添加后,向下移动6行
  18.   h = h + 81 '81是因为默认13.5磅,所以取其6倍
  19. Next i
  20. End Sub
复制代码

评分

参与人数 1 +16 金币 +18 收起 理由
爱疯 + 16 + 18 07的话,就可以。学习了!

查看全部评分

回复

使用道具 举报

发表于 2012-1-17 16:25 | 显示全部楼层
有没有localname这个属性?一般情况下这个表示本地语言名称!
回复

使用道具 举报

发表于 2012-1-17 16:26 | 显示全部楼层
%d%a有没有localname这个属性?一般情况下这个表示本地语言名称!我是手机发的,没办法测试!
回复

使用道具 举报

 楼主| 发表于 2012-1-17 16:27 | 显示全部楼层
FF7 发表于 2012-1-17 16:26
%d%a有没有localname这个属性?一般情况下这个表示本地语言名称!我是手机发的,没办法测试!

谢谢ff7!
没有呀
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-17 03:21 , Processed in 0.574897 second(s), 19 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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