Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Formel in VBA-Funktion umschreiben

Forumthread: Formel in VBA-Funktion umschreiben

Formel in VBA-Funktion umschreiben
11.09.2006 06:36:42
Lorenz
Hallo Excelspezialisten!
Mit folgender ZellFormel:
=WENN(ANZAHL(FINDEN(INDIREKT(MySPALTE&"4");INDIREKT("C"&ZEILE())));1;0)
funktioniert´s einwandfrei.
Als benannte Formel tut sich allerdings nichts. Daher möchte ich die Aufgabe mit einer VBA-Funktion lösen.
Kann mir vielleicht jemand so eine Funktion erstellen?
PS.: MySPALTE = Benannte Formel[zur Ausgabe des Spaltenbuchstabens] =LINKS(ADRESSE(1;SPALTE();4);1+(SPALTE()>26))
Danke
und Grüße
Lorenz
Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formel in VBA-Funktion umschreiben
11.09.2006 08:01:45
roland_k
Hi
mit dem makrorekorder zeigts dir denke ich den code an.
recorder starten
auf die zelle mit der hinterlegten funktion klicken, return, dan sollte das im makro angezeigt werden.
nur gut gemeint, es kann auch sein dass ich da was nicht richtig verstanden habe
gruss
roland_k
Anzeige
AW: Formel in VBA-Funktion umschreiben
11.09.2006 08:06:21
Coach
Hallo Lorenz,
das liegt an der automatischen Matrixformel-Funktion bei als Namen definierten Formeln.
Du müßtest Deine MySpalte-Formel so ändern:
=LINKS(ADRESSE(1;MIN(SPALTE());4);1+(MIN(SPALTE())>26))
~f~
Deine Ergebnisformel so:
~f~
=WENN(ANZAHL(FINDEN(INDIREKT(MySpalte&"4");INDIREKT("C"&MIN(ZEILE()))));1;0)
Es wäre natürlich viel einfacher, die benannte Formel so zu definieren, nachdem Du zuvor Zelle D5 markiert hast:
=WENN(ANZAHL(FINDEN(Tabelle1!D$4;Tabelle1!$C5));1;0)
Excel passt die Bezüge dann automatisch an.
Gruß Coach
Anzeige
AW: Formel in VBA-Funktion umschreiben
11.09.2006 09:15:15
Lorenz
Hallo Coach!
mit =LINKS(ADRESSE(1;MIN(SPALTE());4);1+(MIN(SPALTE())>26)) liefert mir die Spaltenbezeichnung und hängt hinten eine "1" an. Somit ist als Spaltenbezeichnung in "INDIREKT(MySPALTE&"4") nicht brauchbar.
Die Variante "WENN(ANZAHL(FINDEN(Tabelle1!D$4;Tabelle1!$C5));1;0)" habe ich aus folgenden Grund nicht verwendet: Die benannte Formel sollte für alle Arbeitsblätter u. das in bis zu zehn verschiedene Bereichen.
Deswegen weil "Excel passt die Bezüge dann automatisch an"
Gruss
Lorenz
Anzeige
AW: Formel in VBA-Funktion umschreiben
11.09.2006 09:31:42
Coach
Hallo Lorenz,
bei mir liefert
=LINKS(ADRESSE(1;MIN(SPALTE());4);1+(MIN(SPALTE())>26))
eindeutig nur die Spaltenbezeichnung, vielleicht hast Du die Formel falsch "benannt".
Gruß Coach
AW: Formel in VBA-Funktion umschreiben
11.09.2006 09:44:04
Lorenz
Hallo Coach!
bei mir liefert
=LINKS(ADRESSE(1;MIN(SPALTE());4);1+(MIN(SPALTE())>26))
immer nur die Spaltenbezeichnung &1, auch mit der Formel. Also A1 für Spalte(1)
u. AA1 für Spalte(27)usw..
PS:Habe es auch in leerer Mappe probiert
Gruß Lorenz
Anzeige
Erledigt m. T :-))
11.09.2006 11:54:21
Lorenz
Hallo Coach!
Dein Coaching brachte was!
Und zwar verwende ich für meine Zwecke (Wünsche) die Variante(den Namen) "MyErg"
Danke vielmals u. Grüsse Lorenz
Anzeige
AW: Formel in VBA-Funktion umschreiben
11.09.2006 11:28:38
Lorenz
Hallo!
Kleine Korrektur (oder zweite verwendete Variante)zu PS.:
MySPALTE = Benannte Formel[zur Ausgabe des Spaltenbuchstabens] =WECHSELN(ADRESSE(1;SPALTE();4);1;)
Gruss Lorenz
Erledigt o.T
11.09.2006 14:48:54
Lorenz
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige