ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[原创] 汉字笔画计算小程序

[复制链接]

TA的精华主题

TA的得分主题

发表于 2018-9-27 22:59 | 显示全部楼层 |阅读模式
'纯vba代码

Private Sub CommandButton1_Click()

m = ActiveSheet.Shapes.Count
For i = m To 1 Step -1
   If ActiveSheet.Shapes(i).Type <> 12 Then ActiveSheet.Shapes(i).Delete
Next

Dim s As String
s = [g3].Value

Dim wordapp As Object
Set wordapp = CreateObject("word.application")

With wordapp
    .documents.Add
    '.Visible = 1

    .ActiveDocument.Shapes.AddTextEffect(msoTextEffect1, s, "楷体_GB2312", 100#, msoFalse, msoFalse, 66#, 80).Select
    'DoEvents
    With .Selection
         .Cut
         .PasteSpecial DataType:=3
    End With

    .ActiveDocument.Shapes(1).Select
    .Selection.ShapeRange.Ungroup.Select
    .Selection.Copy

    .ActiveDocument.Close False
End With

ActiveSheet.[e7].Select
ActiveSheet.Paste

m = ActiveSheet.Shapes.Count
ActiveSheet.[g4].Select
ActiveSheet.[g4].Value = m - 3

wordapp.Quit SaveChanges:=wdDoNotSaveChanges
Set wordapp = Nothing
End Sub


qq33.JPG

附件说明:
在G3 单元格输入汉字,点击“计算”  在G4 单元格得出该汉字笔画数。

汉字笔画计算程序.rar (18.03 KB, 下载次数: 438)

评分

4

查看全部评分

TA的精华主题

TA的得分主题

发表于 2018-9-28 07:51 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2018-9-28 08:10 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-9-28 09:36 | 显示全部楼层
word2007 中测试:
  
.Selection.ShapeRange.Ungroup.Select  
执行到这一句"取消组合" 报错;

改“分解图片”功能可以拆分出笔画,但是录制的宏与上面相同。
求 word2007 分解图片的 有效vba 代码。

qq12.JPG

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-9-28 14:35 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
1、取消组合
Selection.ShapeRange.Ungroup.Select

2、分解图片
WordBasic.DrawDisassemblePicture

经个人调试,1替换为2 ,则office 2007 也可以正常执行代码了。
详见附件 ,欢迎测试。

汉字笔画v1.3.zip (30.51 KB, 下载次数: 214)

评分

2

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-9-28 16:08 | 显示全部楼层
给笔画填充颜色,自然序号i 是乱的, 并不是书写该汉字的笔画顺序 。

Sub test()
m = ActiveSheet.Shapes.Count
For i = 3 To m - 1
   ActiveSheet.Shapes(i).Select
   Selection.ShapeRange.Fill.ForeColor.RGB = RGB(0, 0, 0)
Next
End Sub

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2018-9-28 19:18 | 显示全部楼层
本帖最后由 YZC51 于 2018-9-28 19:35 编辑

谢谢老师!学习下
Sub 按钮110_Click()
    m = ActiveSheet.Shapes.Count
    For i = m To 1 Step -1
       If ActiveSheet.Shapes(i).Type <> 8 Then ActiveSheet.Shapes(i).Delete
    Next
    Dim s As String
    s = [g3].Value
    Dim wordapp As Object
    Set wordapp = CreateObject("word.application")
    With wordapp
        .documents.Add
        '.Visible = 1
        .ActiveDocument.Shapes.AddTextEffect(msoTextEffect1, s, "楷体_GB2312", 150#, msoFalse, msoFalse, 66#, 80).Select
        'DoEvents
        With .Selection
             .Cut
             .PasteSpecial DataType:=3
        End With
        .ActiveDocument.Shapes(1).Select
        .WordBasic.DrawDisassemblePicture
        .Selection.Copy
        .ActiveDocument.Close False
    End With
    ActiveSheet.[f7].Select
    ActiveSheet.Paste
    m = ActiveSheet.Shapes.Count
    ActiveSheet.[g4].Select
    ActiveSheet.[g4].Value = m - 3
    wordapp.Quit SaveChanges:=wdDoNotSaveChanges
    Set wordapp = Nothing
    m = ActiveSheet.Shapes.Count
    For i = 3 To m - 1
       ActiveSheet.Shapes(i).Select
       Selection.ShapeRange.Fill.ForeColor.RGB = RGB(0, 0, 0)        ActiveSheet.[f1].Select
       Application.Wait (Now + TimeValue("0:00:01"))
    Next
    ActiveSheet.[f1].Select

End Sub

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-9-28 19:28 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
YZC51 发表于 2018-9-28 19:18
谢谢老师!学习下
Sub 按钮110_Click()
    m = ActiveSheet.Shapes.Count

其实后面还有 2大难题,笔画的 先后顺序、书写方向。
我是一点 思路没有。

TA的精华主题

TA的得分主题

发表于 2018-9-28 19:37 | 显示全部楼层
谢谢老师分享,俺坚信老师一定会有办法的!

TA的精华主题

TA的得分主题

发表于 2018-9-28 21:29 | 显示全部楼层
zopey 发表于 2018-9-28 19:28
其实后面还有 2大难题,笔画的 先后顺序、书写方向。
我是一点 思路没有。

或是最让人放心的汉字笔画序库
http://club.excelhome.net/thread-649531-1-1.html

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

本版积分规则

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

GMT+8, 2024-6-2 10:35 , Processed in 0.042695 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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