Formel generativ erstellen
#1
Hallo,

ich habe mehrer Tabellen, die alle über strukturierte Verweise angesprochen werden sollen.
Jede Tabelle hat die gleichen Spalten und eine Ergebniszeile. Ich möchte eine neue Tabelle erstellen, in der alle Ergebniszeilen zusammengefasst werden.

=NameTabelle[[#Ergebnisse];[Gebühren]] .....


Es kommen immer wieder welche hinzu und und ich will nicht immer für alle Spalten den NamenTabelle ändern müssen. 
Deshalb dachte ich mir ich erstelle die Formel so:

=VERKETTEN(A1;"[[#Ergebnisse];[Gebühren]]")    in A1 steht der jeweilige NameTabelle
=VERKETTEN(A1;"[[#Ergebnisse];[EBIT]]")

Wie kann ich jetzt diesen Text in eine Formel einbetten?

Vielen Dank!
Antworten Top
#2
=INDIREKT()

"Mehrere Tabellen" ist aber keine gute Idee.
WIN/MSO schicken angeblich alle 5 Sekunden Deinen Screen heim zu Papa (recall-Klausel). 
Antworten Top
#3
Danke für deine Antwort.

Mit indirekt muss ich aber doch genau wissen, wo die Zelle ist. Ich möchte aber in die erste Spalte den neuen Namen der Tabelle eingeben und über den strukturierten Verweis werden die Werte gefunden. Der strukturierte Verweis wird wie oben generiert.

Ich habe jetzt eine Lösung über VBA gefunden, was mir aber eigentlich zu kompliziert ist. Hätte es gerne direkt im Excel gelöst. 


Code:
Option Explicit

Sub FormeltextInFormelUmwandeln()

   Dim rng As Range
   For Each rng In Selection
      rng.FormulaLocal = rng.Text
   Next
End Sub


Aber gibt es denn keine Funktion in Excel wie "FormulaLocal"?
Antworten Top
#4
Hallo!

Wenn du die Formel in der selben Zelle auswerten willst in der auch der Text steht, geht das tatsächlich (ohne Zwischenschritt) nur mit VBA.
Für eine Formellösung brauchst du eine Hilfszelle. Annahme: Formeltext steht in A1, Hilfszelle ist B1
Markiere B1 und vergib einen Namen über den Namensmanager. Als Name verwende zB "Rechnen" (ohne Anführungszeichen). Bei "Bezieht sich auf" schreibst du die Formel

Code:
=AUSWERTEN(Tabelle1!A1)
rein, wobei Tabelle1 durch den Namen des Tabellenblatts ersetzt werden muss.
Nun schreibst du in B1 die Formel

Code:
=Rechnen
Schöne Grüße
Berni
[-] Folgende(r) 1 Nutzer sagt Danke an MisterBurns für diesen Beitrag:
  • D7design
Antworten Top
#5
Es wäre mir egal, wenn ich über eine Hilfszeile gehen muss. Aber leider kennt mein Excel die Funktion AUSWERTEN nicht. Sie wird auch in der Autovervollständigung nicht angezeigt.

   


Sorry, habe nicht deine Anweisungen befolgt. Funktioniert genauso, wie du gesagt hast!

Geht das nur über den Namenmanager? Weil ich dann das Ganze ja wieder für jede Zelle einzeln machen muss, dann kann ich es leider gleich wieder für jede Zelle neu schreiben ohne über diesen Umweg.
Antworten Top
#6
Hi,

du solltest die Beiträge schon genau lesen. Das schrieb Berni:


Zitat:Markiere B1 und vergib einen Namen über den Namensmanager. Als Name verwende zB "Rechnen" (ohne Anführungszeichen). Bei "Bezieht sich auf" schreibst du die Formel

Code:
Code:
=AUSWERTEN(Tabelle1!A1)
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Antworten Top
#7
Ich sollte nicht so schnell antworten. Natürlich geht das auch mit einen Bereich!


Top!!!

Funktioniert alles wie gewünscht.

DANKE
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste