Announcement

Collapse
No announcement yet.

Word fernsteuern

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • #16
    Hallo Woble,

    danke für deine Antwort, so ähnlich hatte ich es auch, bloss ich habe komplizierter gedacht, das ich "nur" tm asl bookmark dim-en brauch :-(
    Aber leider klappt es nicht mit doc.Bookmarks, Intellisense springt auch nicht an bei doc. ...
    Ich habe es mal mit wApp.selection.bookmarks probiert, das gleich Phänomen, er springt nicht in die for-each Schleife, als ist doc.Bookmarks leer.

    Ich recherchier noch ein bisschen ... viell. hast du ne Idee...

    Hab die Datei mal anonym. und gezipt, die 102800 soll durch 102801 ersetzt werden.

    Danke Dir Gruss Alex

    Sollte lt. MS aber so gehen:
    http://msdn.microsoft.com/en-us/libr...we(VS.80).aspx
    Attached Files

    Comment


    • #17
      Hi Alex,

      das Zip muss ich mir daheim runterladen, unser Firmenserver will es nicht laden.
      Dauert also ein bisschen bis ich was neues schicke.

      Gruß Womble

      Comment


      • #18
        Hallo Womble,

        kein Problem, ich mußte die Datei zippen, da sie sonst zu groß ist und ich sie nicht uploaden konnte.

        Gruss Alex

        Comment


        • #19
          Hi Alex,

          ich bin die ganzen Auflistungen die mir plausibel erschienen per Hand durchgegangen und habe nichts gefunden, dann habe ich ein Makro aufgezeichnet und eines Deiner Textfelder überarbeitet um zu sehen wo er denn Änderungen vornimmt. In der Sammlung hätte ich dem Namen nach etwas anderes erwartet, aber man lernt nie aus

          Dieser Code muss nach dem ...Documents.Open(...) rein.
          [highlight=vbnet]
          ' Die Shapesauflistung durchgehen und bei allen Shapes die Text besitzen diesen ersetzen
          Dim sh As Shape
          For Each sh In doc.Shapes
          If sh.TextFrame.HasText Then
          If sh.TextFrame.TextRange.Text.IndexOf("102800") > -1 Then
          sh.TextFrame.TextRange.Text = sh.TextFrame.TextRange.Text.Replace("102800", "1028001")
          End If
          End If
          Next
          [/highlight]

          [Edit:]
          Der Code wurde nochmal überarbeitet, einige Textfelder haben auf die Ersetzung seltsam reagiert, deswegen werden nur Textfelder geändert die auch für eine Änderung in Frage kommen.

          Gruß Womble
          Zuletzt editiert von Womble; 04.11.2008, 10:09.

          Comment


          • #20
            Hallo Womble,

            das ist geil, funktioniert wunderbar
            Sorry, dass es so viel Arbeit war, aber ich verstehe eins nicht, wenn probiert habe ein Makro aufzunehmen, ließen sich die Textfelder(Shapes) nicht anwählen, habe ich die Aufzeichnung gestoppt ließen sie sich wieder anwählen.
            In Office 2003 & Office 2007 das gleiche???

            Ich habe jetzt noch paar Fragen:

            [highlight=vbnet]
            Dim wApp As ApplicationClass = New ApplicationClass()
            wApp.Visible = True
            [/highlight]

            Woher weiss das Programm, dass es Office-Word öffnen soll?
            Wenn ich bis zu den Code ausführe, öffnet er ja Word?

            Wie kann ich das Dokument abspeichern?
            über die wApp.Quit Methode kann ich ja das Dookument nicht speichern, über doc... bietet er mir auch keine Methode an, brauch nur mal einen kurzen Tipp.

            Danke Dir ganz doll ...

            Gruss Alex

            /*EDIT*/
            Die Frage mit dem Abspeichern konnte ich allein lösen:
            wApp.ActiveDocument.save(), ich hätte schneller nachdenken sollen ;-)
            Zuletzt editiert von facebraker; 04.11.2008, 13:58.

            Comment


            • #21
              Hi Alex,

              ganz einfach.

              Du hast ja mit IMPORTS Microsoft.Office.Interop.Word schon einen Suchpfad vorgegeben, d.h. wenn Du jetzt einfach mit = New ApplicationClass() etwas rufst findet er als erstes Word. Du könntest auch Microsoft.Office.Interop.Word.ApplicationClass() nehmen, das ist das gleiche.

              Gruß Womble

              Comment


              • #22
                Hallo Womble,

                danke für die Info/Erklärung, du hast mir sehr sehr weitergeholfen!
                Es funktioniert perfekt, jetzt kann ich mir es noch anpassen wie ich möchte, einfach perfekt.

                Gruss Alex

                Comment

                Working...
                X