Xml 使用VBA宏识别项目符号列表的样式类型
我必须编写一个VBA宏来识别和删除已应用于项目符号列表中项目符号的样式类型 在下面的document.xml部分中,我们应用了样式类型为“italic”的项目符号Xml 使用VBA宏识别项目符号列表的样式类型,xml,vba,ms-word,Xml,Vba,Ms Word,我必须编写一个VBA宏来识别和删除已应用于项目符号列表中项目符号的样式类型 在下面的document.xml部分中,我们应用了样式类型为“italic”的项目符号 <w w:rsidR="000450E5" w:rsidRPr="00A4560A" w:rsidRDefault="000450E5" w:rsidP="0009336F"> <w:pPr> <w:pStyle w:val="ListBullet"/>
<w w:rsidR="000450E5" w:rsidRPr="00A4560A" w:rsidRDefault="000450E5" w:rsidP="0009336F">
<w:pPr>
<w:pStyle w:val="ListBullet"/>
<w:rPr>
<w:i/>
<w:lang w:val="es-ES"/>
</w:rPr>
</w:pPr>
<w:r w:rsidRPr="00A4560A">
<w:rPr>
<w:lang w:val="es-ES"/>
</w:rPr>
<w:t xml:space="preserve">el marco legislativo y </w:t>
</w:r>
有人能帮我识别并删除添加到项目符号中的样式类型吗。。
提前感谢。以下代码查找具有ListBullet样式的每个段落,然后在段落末尾定义一个范围作为段落标记,然后删除斜体。段落标记存储更改项目符号的斜体格式
For Each objParagraph In objDocument.Paragraphs
Set objRange = objParagraph.Range
If objRange.ListFormat.ListType = wdListBullet Then
objRange.Collapse Direction:=wdCollapseEnd
objRange.MoveStart Unit:=wdCharacter, Count:=-1
objRange.Font.Italic = False
End If
Next objParagraph
尝试将列表添加到监视列表并查看属性?我无法识别xml代码第二块中的名称空间
tps
。这个词是来自标准docx文件的openxml吗?如果没有,是什么?w:i不是任何样式的名称—它是一个直接格式化命令,似乎是用户通过“项目符号”对话框对文档应用的。样式的名称是ListBullet,它的定义可以在docx zip文件的Styles.xml部分找到-您应该检查一下。样式类型是指样式是否为字符、段落、链接等样式,与此无关。@Cindymister对不起,我的错误。第二个块是文档的.cxml文件。我们有一个document-to-document.cxml转换器,它是.cxml中“”标记的输出file@CindyMeister“w:i不是任何样式的名称-它是一个直接格式化命令,似乎已由用户应用于文档,”:我们可以使用VBA宏识别此直接格式化吗?
For Each objParagraph In objDocument.Paragraphs
Set objRange = objParagraph.Range
If objRange.ListFormat.ListType = wdListBullet Then
objRange.Collapse Direction:=wdCollapseEnd
objRange.MoveStart Unit:=wdCharacter, Count:=-1
objRange.Font.Italic = False
End If
Next objParagraph