C# 用c计算Office word中的红色单词数#

C# 用c计算Office word中的红色单词数#,c#,ms-word,office-interop,C#,Ms Word,Office Interop,我想计算word文档(.docx)中的所有红色单词。我怎么能在c#中做到这一点?例如,在此图片中,结果必须为4: ApplicationClass word=new ApplicationClass(); 对象m=缺少.Value; 对象fileObj=“myfile.docx”; 文档文档=word.Documents.Open(参考文件对象、参考m、参考m、参考m、参考m、参考m、参考m、参考m、参考m、参考m、参考m、参考m、参考m、参考m、参考m、参考m、参考m); 红色整数=0; 对于

我想计算word文档(.docx)中的所有红色单词。我怎么能在c#中做到这一点?例如,在此图片中,结果必须为4

ApplicationClass word=new ApplicationClass();
对象m=缺少.Value;
对象fileObj=“myfile.docx”;
文档文档=word.Documents.Open(参考文件对象、参考m、参考m、参考m、参考m、参考m、参考m、参考m、参考m、参考m、参考m、参考m、参考m、参考m、参考m、参考m、参考m);
红色整数=0;

对于(int i=1;i Hi,你尝试过什么吗?查看Microsoft Com有很多示例如何将“Interop”与Word的查找功能结合使用。在研究了使用Interop的基本知识后,在Word中录制一个宏以查找红色文本-这将为你提供基本语法(在VBA中,但如果你的代码中有C#使用Word的Find的示例,那没问题。使用计数器在循环中进行查找…@Stefan不,我疯了,几年后我什么都不知道!请帮忙
ApplicationClass word = new ApplicationClass();
object m = Missing.Value;
object fileObj = "myfile.docx";
Document doc = word.Documents.Open(ref fileObj, ref m, ref m, ref m, ref  m, ref m, ref m, ref m, ref m, ref m, ref m, ref m, ref m, ref m, ref m, ref m);

int red = 0;

for (int i = 1; i <= doc.Words.Count; i++)
{
    if (doc.Words[i].Font.Color == WdColor.wdColorRed)
    {
        red++;
    }
}

word.Quit(ref m, ref m, ref m);
word = null;
GC.Collect();