Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1044to1048
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
Array-Formel in VBA
02.02.2009 17:28:00
Peter
Hallöchen liebe Excel Gemeinde,
ich hab da ein kleines Problem, wo ich hoffe, dass mir die VBA Spezialisten unter Euch helfen können.
Und zwar geht es um folgende Formel im VBA Code:

wb1.Worksheets(letztdat3).Cells(4, d).FormulaArray = _
"=SUM(COUNTIF(INDIRECT("""" & TRANSPOSE(Tage!"" & e & "")&""!D3:z3""),R[-1]C))"


Bevor die Frage auftaucht, alle Variablen sind ordnungsgemäß deklariert, und mein Code funktioniert bis auf diese eine Zeile.
Ich vermute mal, dass der Haken bei der Variablen "e" liegt.
Dort steht ein Adressbereich drin, den ich vorher ausgelesen habe. Gebe ich diesen Adressbereich in der Schreibweise R[x]C[x] an, funktioniert die Formel. In der Variablen "e" steht aber "$A$1:$A$4". Kann es sein, dass dies der Fehler ist? Er steigt mir immer mit Laufzeitfehler 1004 aus. Objektdefinierte Fehler.
Falls dies der Fehler sein sollte, wie bekomme ich die "A"-Schreibweise in eine "RC"-Schreibweise. Ich muss hier mit Variablen Arbeiten.
Gruß und vielen Dank schonmal.
Peter R.

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Array-Formel in VBA
02.02.2009 17:45:07
Ramses
Hallo
Ich glaube eher, der Fehler liegt hier
&""Welche_Tabelle?!D3:z3"")
Gruss Rainer
AW: Array-Formel in VBA
02.02.2009 17:49:51
Peter
Hallo Ramses,
Antwort: aktives Worksheet (letztdat3)
Schreibe ich die Formel so:

wb1.Worksheets(letztdat3).Cells(4, d).FormulaArray = _
"=SUM(COUNTIF(INDIRECT("""" & TRANSPOSE(Tage!r[-3]c[-3]:r[-1]c[-3])&""!D3:z3""),R[-1]C))"


funktioniert es.
Bei der Schreibweise:


wb1.Worksheets(letztdat3).Cells(4, d).FormulaArray = _
"=SUM(COUNTIF(INDIRECT("""" & TRANSPOSE(Tage!"" & e & "")&""!D3:z3""),R[-1]C))"


eben nicht.
Also kann es ja eigentlich nur an der Variablen e liegen. Aber wie bekomme ich diese Formel dazu mit einer Variablen anstatt eines festen Zellbezuges zu arbeiten.
Gruß
Peter R.

Anzeige
Warum schreibst du nicht alles in A1? orT
04.02.2009 04:33:00
Luc:-?
Gruß Luc :-?
AW: Warum schreibst du nicht alles in A1? orT
04.02.2009 07:24:00
Peter
Hallo Luc,
weil die Tabellenblattnamen variabel sind und diese eben auf dem Tabellenblatt Tage erst durch ein weiteres Makro aufgelistet werden.
Habe aber inzwischen eine Lösung gefunden. Musste nur eine andere Variable nehmen und diese muss immer neu berechnet werden, da dieses Formel in einerSchleife ist.
Vielen Dank.
Gruß
Na bitte, geht doch! Gruß owT
05.02.2009 02:55:31
Luc:-?
:-?

342 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige