Laden...

Problem Text in Word-DOkument suchen und ersetzen (Application.Selection.Find)

Erstellt von oehrle vor 14 Jahren Letzter Beitrag vor 14 Jahren 4.156 Views
O
oehrle Themenstarter:in
461 Beiträge seit 2009
vor 14 Jahren
Problem Text in Word-DOkument suchen und ersetzen (Application.Selection.Find)

Hallo,

ich muß in einem Word-Dokument. Sämtliche Textboxen und Einträge in Tabellen umbenennen. Nun habe ich mal nachgesehen, wie das realisiert wird. Bei MSDN gibts da ein Beispiel, leider hakts da bei Application.Selection.Find !

Der Debugger sagt, er kann keine Zugriff auf eine nicht statische Eigenschaft in sttischem Inhalt haben.


public void SearchReplace()
        {
            Microsoft.Office.Interop.Word.Find findObject = Microsoft.Office.Interop.Word.Application.Selection.Find; 


            
            findObject.ClearFormatting();
            findObject.Text = "7.5";
            findObject.Replacement.ClearFormatting();
            findObject.Replacement.Text = "7.05";

            object replaceAll = WdReplace.wdReplaceAll;
            findObject.Execute(ref MISS, ref MISS, ref MISS, ref MISS, ref MISS,
                ref MISS, ref MISS, ref MISS, ref MISS, ref MISS,
                ref replaceAll, ref MISS, ref MISS, ref MISS, ref MISS);
        }

JEtzt weiß ich nicht wo genau das Problem liegt. Ich habe das BEispiel so in meine Anwendung übernommen. Kann mir jeman einen Ratschlag geben?

Weiß jemand wie ich gezielt nur Textfelder in Word abarbeiten kann?

T
16 Beiträge seit 2009
vor 14 Jahren

Hallo,

Also ich hab bin schon die ganze zeit beim Word-programmieren.. und bei mir hat es so funktioniert:


Microsoft.Office.Interop.Word.Find findObject = myWordApp.Selection.Find;
   			findObject.ClearFormatting();
   			findObject.Text = "{name1}";    // {name1} ist als "platzhalter" direkt in Word ausgeschrieben... z.B. in einer Tabelle
  			findObject.Replacement.ClearFormatting();
  			findObject.Replacement.Text = "TMH";
  			
  			
  		
    		object replaceAll = Microsoft.Office.Interop.Word.WdReplace.wdReplaceAll;
    		findObject.Execute(ref missing, ref missing, ref missing, ref missing, ref missing,
        	ref missing, ref missing, ref missing, ref missing, ref missing,
        	ref replaceAll, ref missing, ref missing, ref missing, ref missing);

lg TMH