Hallo, ich muss zugeben, ich habe den folgenden Code auch nur gefunden und in meine Anwendung kopiert...war vielleicht ein Fehler (ab jetzt ist es auch zu spät)! ;-)
Problem 1: Wenn meine for-Schleife durchlaufen ist, springt der Debugger immer in den catch Teil und zeigt meine MessageBox an - Warum
Problem 2: Wie kann ich mehrere Textmarken füllen lassen? Ich habe es versucht, indem ich die Methode öfters aufrufe, aber da wird dann für jeden Methodenaufruf ein Word-Dokument geöffnet und immer nur eine Textmarke gefüllt.
Ich hoffe Ihr könnt mir helfen?!
DANKE!
Code:
private void WriteToBookMark(string BookMarkName, string BookMarkText)
{
try
{
object Dateiname = "U:/Bestellung.doc";
object neueVorlage = false;
object DocTyp = 0;
object sichtbar = true;
myWordDoc = myWordApp.Documents.Add(ref Dateiname, ref neueVorlage, ref DocTyp, ref sichtbar);
myWordApp.Visible = true;
myWordDoc.Activate();
int bookmark_cnt = myWordDoc.Bookmarks.Count;
int i;
for (i = 1; i <= bookmark_cnt; i++)
{
object o = (object)i;
if (BookMarkName.ToLower().Trim() == myWordDoc.Bookmarks.Item(ref o).Name.ToLower().Trim())
{
myWordDoc.Bookmarks.Item(ref o).Select();
myWordApp.Selection.TypeText(BookMarkText);
}
}
}
catch (Exception ex)
{
//String err = ex.Message;
MessageBox.Show("Keine Dokumentenvorlage vorhanden", "Achtung", MessageBoxButtons.OK,MessageBoxIcon.Warning);
}
}
Problem 1: Wenn meine for-Schleife durchlaufen ist, springt der Debugger immer in den catch Teil und zeigt meine MessageBox an - Warum
Problem 2: Wie kann ich mehrere Textmarken füllen lassen? Ich habe es versucht, indem ich die Methode öfters aufrufe, aber da wird dann für jeden Methodenaufruf ein Word-Dokument geöffnet und immer nur eine Textmarke gefüllt.
Ich hoffe Ihr könnt mir helfen?!
DANKE!