首页 > 代码库 > Word中使用VBA自动生成公式时的注意事项
Word中使用VBA自动生成公式时的注意事项
Sub GenEQ() If Selection.start <> Selection.End Then Dim objRange As Range Dim objEq As OMath Set objRange = Selection.Range ‘不能加入下面这行注释掉的代码,否则在日文版Word 2007和2010上将不能实现下面的灵活字体控制 ‘objRange.Text = Selection.Range.Text Set objRange = objRange.OMaths.Add(objRange) ‘灵活控制哪类字符加斜体 For i = 1 To objRange.Characters.count If objRange.Characters(i).Text Like "[a-zA-Z]" Then objRange.Characters(i).Italic = True Else objRange.Characters(i).Italic = False End If Next i Set objEq = objRange.OMaths(1) objEq.BuildUp ‘加入下面这行代码,会使日文版Word 2007和2010的行为正常,否则将出现下面的怪异现象,中文版Word 2013没有这种现象: ‘在Word中,在第一行输入x=3,选择x=3,使用本函数生成公式(x是斜体,=3不是斜体),回车换行,当前光标将停留在居中位置(进行相同操作,中文版word 2013光标将停在左对齐位置), ‘再输入y=x+1,选择y=x+1,使用本函数生成公式(y=x+1都不是斜体) objEq.ParentOMath.Type = wdOMathInline End If End Sub
本文出自 “GONE WITH THE WIND” 博客,请务必保留此出处http://h2appy.blog.51cto.com/609721/1604040
Word中使用VBA自动生成公式时的注意事项
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。