Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
444to448
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
444to448
444to448
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Aus Excel in Word Makro aufrufen mit Variable

Aus Excel in Word Makro aufrufen mit Variable
29.06.2004 19:09:55
Michael
Hi,
möchte aus Excel ein Word-Dokument öffnen und ein Makro ausführen. Das funktioniert dank der Hilfe hier auch einwandfrei.
Excel-Workbook:
Public

Sub Test1()
Dim AppWord As Object
Dim sFile As String
sFile = ActiveWorkbook.Path & "/testdok.doc"
Set AppWord = CreateObject("Word.Application")
AppWord.Documents.Open sFile
AppWord.Run "Project.Modul1.test"
AppWord.Quit
Set AppWord = Nothing
End Sub

Worddokument "TestdoK.doc"
Public

Sub test()
MsgBox "Testbox"
End Sub

Nun möchte ich aber beim Makroaufruf ne Variable übergeben - am besten ein Array. Was auch immer ich versuche, ich bekomme es nicht hin - die Tipps hier gehen nur den umgekehrten Weg.
Hat jemand ne Idee
Greets
Michael

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Aus Excel in Word Makro aufrufen mit Variable
29.06.2004 19:37:57
Ulf
An wen oder was soll denn eine variable übergeben werden, oder anders,
wer oder was soll die Variable übernehmen?
Ulf
AW: Aus Excel in Word Makro aufrufen mit Variable
29.06.2004 19:40:14
Michael
Ich möchte das Array dann in dem Makro auslesen und die einzelnen Werte an Formfields übergeben.
Michael
AW: Aus Excel in Word Makro aufrufen mit Variable
29.06.2004 20:04:32
Ulf
Welche Formfields?
Ulf
AW: Aus Excel in Word Makro aufrufen mit Variable
29.06.2004 20:09:59
Michael
Geh davon aus, dass im Worddokument zahlreiche Textformularfelder existieren. Gefüllt werden Sei üblicherweise über:
Activedocument.Formfields("tmTest").Result = array(1,1)
Und genau dieses Array, das in Excel gefüllt wird, möchte ich ins Word-Makro übergeben.
Michael
AW: Aus Excel in Word Makro aufrufen mit Variable
29.06.2004 20:37:26
Ulf
dann füll doch diese Formfields direkt aus dem Array in Excel. Dazu
brauchst du nicht den Umweg über Run.
Ulf
Anzeige
AW: Aus Excel in Word Makro aufrufen mit Variable
29.06.2004 20:40:26
Michael
Klar, mach ich jetzt - das Problem ist, dass du ewig oft nen Austausch zwischen Word und Excel hast (ca. 150 x und das * 30) und bei langsamer Hardware dauert das ewig - um das ganze zu beschleunigen möchte ich eben nur einmal übergeben (das Array) und dann in der Word-Anwendung bleiben.
Michael
AW: Aus Excel in Word Makro aufrufen mit Variable
30.06.2004 06:20:31
Michael
Keine einer Idee?
Ich habe eine super Idee!!!!!!!!!
30.06.2004 07:55:50
Christoph Dümmen
schau doch mal in die Hilfe.
Man, Michael. 1 x kurz auf die F1-Taste und dann hättest Du Dir die ganzen Beiträge sparen können.
Word:

Function TestFunc(str As String)
MsgBox str
End Function


Excel:
AppWord.Run "TestFunc", "Hallo Welt"
Gruß
Christoph
Run-Methode
Syntax 1: Führt ein Makro aus oder ruft eine Funktion auf. Diese Syntax eignet sich zur Ausführung eines Makros, das in Visual Basic oder der Microsoft Excel 4.0-Makrosprache geschrieben wurde, oder zur Ausführung einer Funktion in einer DLL oder XLL.
Syntax 2: Führt das Microsoft Excel 4.0-Makro an der aktuellen Position aus. Der Bereich muss sich in einer Makrovorlage befinden.
Syntax 1
Ausdruck.Run(Macro, Arg1, Arg2, ...)
Syntax 2
Ausdruck.Run(Arg1, Arg2, ...)
Ausdruck Optional für Application-Objekte; erforderlich für Range-Objekte. Ein Ausdruck, der die Anwendung zurückgibt, die das Makro enthält, oder den Bereich in einer Makrovorlage, der ein Microsoft Excel 4.0-Makro enthält.
Macro Variant erforderlich für Syntax 1 (wird in Syntax 2 nicht verwendet). Das auszuführende Makro. Es kann entweder eine Zeichenfolge mit dem Makronamen angegeben werden, oder ein Range-Objekt, welches die Position der Funktion bezeichnet, oder die Registerkennnummer einer registrierten DLL (XLL)-Funktion. Wenn eine Zeichenfolge verwendet wird, wird diese im Kontext des aktiven Blatts ausgewertet.
Arg1, Arg2, ... Variant optional. Die Argumente, die an die Funktion weiterzuleiten sind.
Anmerkungen
Benannte Argumente können mit dieser Methode nicht verwendet werden. Argumente müssen nach Position übergeben werden.
Die Run-Methode gibt den Rückgabewert des aufgerufenen Makros zurück. Objekte, die als Argumente an das Makro weitergeleitet werden, werden in Werte konvertiert (durch Zuweisung der Value-Eigenschaft an das Objekt). Das heißt, es ist mit der Run-Methode nicht möglich, Objekte an Makros weiterzuleiten.
Anzeige
AW: Ich habe eine super Idee!!!!!!!!!
30.06.2004 10:06:23
Michael
Geht wunderbar in Excel, aber nicht bei der Übergabe in Word - Fehlermeldung: Objekt unterstützt Eigenschaft oder Methode nicht :-((
AW: Ich habe eine super Idee!!!!!!!!!
30.06.2004 12:13:18
Christoph Dümmen
Dann lade doch mal die Arbeitsmappe hoch.
Ich habe das Argument von Excel nach Word geschickt und das klappt hervorragend.
Gruß
Christoph
AW: Ich habe eine super Idee!!!!!!!!!
30.06.2004 17:23:00
Michael
Anbei die beiden Dokumente - merci, wäre klasse, wenn es klappen würde
https://www.herber.de/bbs/user/7903.xls

Die Datei https://www.herber.de/bbs/user/7904.doc wurde aus Datenschutzgründen gelöscht

Michael
nun gehts
30.06.2004 21:25:28
Christoph Dümmen
AppWord.Run "test", TestArray
dann läufts. Es braucht nicht die Refernz auf das Projekt.
Schlaft gut
Christoph
Anzeige
AW: nun gehts
30.06.2004 21:29:10
Michael
VIELEN DANK!!!!
Michael

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige