Hallo zusammen,
ich habe folgendes Problem. Mit einem C# Programm lasse ich nach einem Begriff in einem Word 2003 Dokument suchen und mir anzeigen. Dies funktioniert auch wunderbar. Nur bei mehrseitigen Dokumenten, die, wo der Begriff in einer Textbox enthalten ist. Der Begriff wird zwar markiert, aber Word bleibt immer auf der 1. Seiten stehen. Man muss manuell auf die Seiten scrollen um den markierten Begriff zu sehen.
Ich habe mir in Word ein Makro erstellt, dass einen Begriff sucht un anzeigt. Den Quellcode habe ich in C# übersetzt.
Was muss ich machen, damit mir die Methode Find.Execute auch in die Textboxen springt?
Vielen Dank im Voraus.
Quellcode:
object Filename = strFilename;
object missingvalue = Type.Missing;
bject SearchWord = strSearchWord;
// Show and open MS Word
MSWord.ApplicationClass word = new MSWord.ApplicationClass();
word.Visible = true;
// Activate word objekt
word.ShowMe();
word.Activate();
// Open the given filename
word.Documents.Open2002(ref Filename, ref missingvalue, ref missingvalue, ref missingvalue,
ref missingvalue, ref missingvalue, ref missingvalue, ref missingvalue, ref missingvalue,
ref missingvalue, ref missingvalue, ref missingvalue, ref missingvalue, ref missingvalue,
ref missingvalue);
word.Selection.Find.ClearFormatting();
word.Selection.Find.Text = SearchWord.ToString();
word.Selection.Find.Replacement.Text = „“;
word.Selection.Find.Forward = true;
word.Selection.Find.Wrap = Microsoft.Office.Interop.Word.WdFindWrap.wdFindContinue;
word.Selection.Find.Format = false;
word.Selection.Find.MatchCase = false;
word.Selection.Find.MatchWholeWord = false;
word.Selection.Find.MatchWildcards = false;
word.Selection.Find.MatchSoundsLike = false;
word.Selection.Find.MatchAllWordForms = false;
word.Selection.Find.Execute(ref missingvalue, ref missingvalue, ref missingvalue, ref missingvalue, ref missingvalue, ref missingvalue, ref missingvalue, ref missingvalue, ref missingvalue, ref missingvalue, ref missingvalue, ref missingvalue, ref missingvalue, ref missingvalue, ref missingvalue);