我使用VBA在Word中创建一个重叠字符:
a = "x"
b = "."
Selection.Fields.Add Range:=Selection.Range, Text:= _
"EQ o (" & a & "," & b & ")", PreserveFormatting:=False
输出为
{ EQ o (x,.) }
产生:http://img843.imageshack.us/img843/3783/18492133.png。从灰色框可以看出,字符是要宽的。通过将手动将字段更改为http://img838.imageshack.us/img838/1723/69344761.png
{ EQ o (x,.)} or {EQ o (x,.)}
但是,如何直接在 VBA 中实现这一点呢?
我的假设是您需要删除最终偏执和大括号之间的尾随空格。
暗淡 x 作为字符串
暗淡 y 作为字符串
x= "{ EQ \o (x,.) }"
y = Replace(x, " }", "}") '注意查找表达式的空间,例如 ' }'"也可以把") }"替换为")}"
y 成为我认为你想要的输出
您可以使用上面显示的替换函数来完成此任务。
你的代码会变成
a = "x"
b = "."
Selection.Fields.Add Range:=Selection.Range, Text:= _
"EQ o (" & a & "," & b & ")", PreserveFormatting:=False
Selection.Range.Text = Replace(Selection.Range.Text, ") }", ")}")
此代码为字段均衡器分配正确的值
ActiveDocument.Fields.Item(numderfield).Code.Text = "EQ o (" & a & "," & b & ")"