Anzeige
Archiv - Navigation
612to616
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
612to616
612to616
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

ExecuteExcel4Macro erzeugt fehler

ExecuteExcel4Macro erzeugt fehler
19.05.2005 17:51:41
henning
hallo
nach einem tip von reinhard habe ich versucht mit folgendem code die zellen mehrerer worbooks zu addieren.
[c10] = 0
For n = 1 To Range("A65536").End(xlUp).Row 'letzte gefüllte Zelle in A
[c10] = [c10] + ExecuteExcel4Macro("d:\Eigene Dateien\Luxscan\Cordes\Auswertungen\", Cells(n, 1), "Tabelle1", "A1")
Next n

als fehlermeldung gibt excel :fehler beim kompilieren. falsche anzahl an argumenten oder ungültige zuweisung zu einer eigenschaft.
ich wollte eigentlich den code verwenden um mit 2 for to schleifen alle zellen eines blattes zu addieren. daher kann ich das originalbeispiel von der excel-cd nicht verwenden. weiß jemand rat?
was würde eigentlich passieren wenn leere zellen oder zellen mit text addiert werden würden?
ich bin natürlich auch für andere lösungen offen...
vielen dank schonmal
henning

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Du musst die Z1S1-Adressierung nutzen
19.05.2005 18:14:16
Boris
Hi Henning,
...bzw. in VBA: R und C statt Z und S.
Also für A1 (der Dateiname steht in Cells(n, 1) - ohne Endung .xls) - ungetestet:

Application.ExecuteExcel4Macro("'D:\Eigene Dateien\Luxscan\Cordes\Auswertungen\[" & Cells(n, 1) & ".xls]Tabelle1'!R1C1")

Grüße Boris
AW: Du musst die Z1S1-Adressierung nutzen
20.05.2005 10:07:54
henning
vielen dank
jetzt scheint es zu gehen...
For n = 1 To Range("A65536").End(xlUp).Row 'letzte gefüllte Zelle in A
[c6] = [c6] + Application.ExecuteExcel4Macro("'D:\Eigene Dateien\Luxscan\Cordes\Auswertungen\Linie 1\[" & Cells(n, 1) & ".xls]Auswertung Detail'!R7C2")
Next n
so funktioniert es jetzt wenn die zelle leer ist oder eine zahl beinhaltet. aber wenn text drinsteht heißt es: "typen unverträglich". kann ich das über on error resume next abfangen oder muß ich vorher ne abfrage über den inhalt der zelle starten?
wie müßte das dann aussehen?
vielen dank nochmal
henning
Anzeige
AW: Du musst die Z1S1-Adressierung nutzen
20.05.2005 10:21:56
Boris
Hi Henning,
lies den Wert aus der anderen Datei mit der ExcecuteExcel4Macro-Methode aus und weise ihn einer Variablen des Typs Variant zu.
Anschließend fragst du diese Variable mit If IsNumeric(Variable) Then... ab, bevor du sie zu C6 addierst.
Grüße Boris

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige