Link vom word-dokument zum Excel-worksheet

Hallo, liebe Experten,

Ich brauche dringend Hilfe!

Ich habe ein word-dokument mit einer Exceltabelle mit automatischen update verlinkt.

Den Link habe ich über das Menü eingegeben, was prinzipiell auch funktioniert.
Wird das Dokument nun aber z.B. mit einer anderen Officespracheinstellung geöffnet, werden die Links nicht erkannt, da sie in Deutsch mit Z/S für Zeile/Spalte und in Englich mit R/C für Row/Column bezeichnet werden.
Gibt es eine Möglichkeit, das Sprachenunabhängig zu machen? Wie?
Oder wie kann ich den Link durch einen Makro angeben?
(Record Macro funktioniert dafür nicht)

Ein Macro muss wohl ohnehin her, da die Tabellenlänge variiert. ODer wie kann ich das im Menü dynamisch hinkriegen?
Wo müsste das Makro stehen? (im Word oder Excel?)

Danke

Hallo Judith,

Hallo, liebe Experten,

Ich brauche dringend Hilfe!

Ich habe ein word-dokument mit einer Exceltabelle mit
automatischen update verlinkt.

Den Link habe ich über das Menü eingegeben, was prinzipiell
auch funktioniert.
Wird das Dokument nun aber z.B. mit einer anderen
Officespracheinstellung geöffnet, werden die Links nicht
erkannt, da sie in Deutsch mit Z/S für Zeile/Spalte und in
Englich mit R/C für Row/Column bezeichnet werden.
Gibt es eine Möglichkeit, das Sprachenunabhängig zu machen?
Wie?

Lege für den Bereich den du nach Word verküpfen willst in Excel einen Bereichsnamen fest (Name ohne Umlaute und Sonderzeichen!!!).
Baue die Verknüpfung nach Word neu auf. Dazu Bereich in Excel markieren (Namen im Adressfeld wählen) und kopieren. In Word Menü Bearbeiten --> Inhalte einfügen… . Im Dialogfenster ‚Verknüpfen‘ wählen und unter ‚als‘ gewünschtes Format wählen (am Besten RTF, bei den anderen Formaten wird die Größe der Darstellung in Word bei Ändeung des Bereiches in EXCEL nicht ordentlich angepaßt). Die Verknüpfung in Word ist jetzt über den Bereichsnamen definiert und nicht mehr über die Spalten/Zeilen-Schreibweise. Dadurch sollte das ganze auch von deutsch/englischer Version unabhängig sein.

Oder wie kann ich den Link durch einen Makro angeben?
(Record Macro funktioniert dafür nicht)

Ein Macro muss wohl ohnehin her, da die Tabellenlänge
variiert. ODer wie kann ich das im Menü dynamisch hinkriegen?
Wo müsste das Makro stehen? (im Word oder Excel?)

Wenn die Länge der Tabelle sich in EXCEL ändert, dann muß dort der Bereich für den Namen neu festgelegt werden. Das geht auch per Makro, dieses Makro könnte z.B auch vom BeforeClose Ereignis gestartet werden.

Bereichsänderungen werden von Word nicht online-aktualisiert (zumindest in Word97), auch wenn Aktualisieren für Verknüpfungen auf ‚automatisch‘ steht. Die Verknüpfung muß explizit mit „Bearbeiten --> Verknüpfung --> Verknüpfung(en) wählen --> ‚Jetzt aktualisieren‘“ aktualisiert werden. Das kann man auch per Makro machen.

Wie oben bereits erwähnt gibt es (zumindest unter Office97) gewisse Probleme, wenn die Verknüpfung als Grafik oder EXCEL-Objekt eingebaut wird. Dann stimmen die Größenverhältnisse nicht mehr, wenn die Höhe des Bereichs in EXCEL verändert wurde. Unter Formatieren Objekt muß man die Große auf Vorgabe stellen und die Optionen „Punktraster verankern“ und „relativ zur Originalgröße“ deaktivieren. Diese Anpassung in das Aktualiesen-Makro zu integieren ist leider nicht so einfach. Reines Aufzeichnungsmakro reicht nicht.

Gruß
Franz

Hallo,

Danke erstmal für die Hilfe

Mittels Makro lege ich jetzt in Excel einen Bereichsnamen für meine Tabelle fest. Der erscheint allerdings nicht in dem Adressfeld. Somit kann ich ihn nicht auswählen, wenn ich die Verknüpfung nach word definieren möchte.
Gehe ich aber zu „Namen definieren“ so sind dort alle durchs Makro festgelegten Namen korrekt vorhanden.

Gebe ich das Sheet!Name dann händisch in word als Verknüpfung ein, verschwindet diese Angabe dort auch wieder und die Verknüpfung scheint nur zum Worksheet zu bestehen - ich vermute, immer zum activen Worksheet.

Hat jemand ne Idee, was das Problem sein könnte?

Hallo Judith
ich tippe auf ein Syntax-Problem bei der Namenszuweisung für den Bereich in deinem Makro. Bei mir (unter EXCEL97) klappt das einwandfrei. Die Syntax in VBA für die NAmenszuweisung ist:

ActiveWorkbook.Names.Add Name:="Testbereich", RefersToR1C1:="=Tabelle1!R3C2:R10C5"

In diesem Beispiel für den Bereich $B$3:blush:E$10. Am besten zeichnest du das Makro für die Namenszuweisung auf und baust es dann in dein vorhandenes Makro ein, dann sollte es klappen.

Den Textstring für den Bereich kannst du übrigens auch berechnen und dann die Variable einsetzen. z.B.:

Zeilen=25 'letzte Zeile des Bereichs
Bereich="=Tabelle1!R3C2:R" & Zeilen & "C5"
ActiveWorkbook.Names.Add Name:="Testbereich", RefersToR1C1:=Bereich

GRuß
Franz

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]