Formel waagerecht kopieren, wenn Quelldaten senkrecht stehen
Hallo liebe Excelexperten, ich haben zwei Arbeitsblätter mit Daten für Jan. bis Dez. Die Quelldaten in AB 1 stehen senkrecht (Jan bis Dez. untereinander). Die Daten im Ziel-Arbeitsblatt stehen aber waagerecht (Jan. bis Dez. nebeneinander). Nun möchte ich im AB 2 die Daten über die simple Formel =Tabelle1!B2 reinholen. Die Daten sollen als Formel stehen bleiben, da die Quelldaten sich ändern können. Wenn ich nun die Formel im AB 2 nach rechts kopieren (oder ziehen) möchte, kann ich weder über die Dollar-Zeichen noch sonst irgendwie bewerkstelligen, dass Excel die Spaltenzahlen fortsetzt (also =Tabelle1!B2, =Tabelle1!B3, =Tabelle1!B4 usw). Vor diesem Problem stehe ich sehr, sehr häufig und habe bisher immer über die Dollar-Zeichen zumindest in diesem Beispiel das B hinüber retten können. Die Ziffern musste ich dann manuell anpassen. Da gibt es doch sicher eine Lösung, oder? Ich muss noch erwähnen, dass die Quelldatei aus ganz vielen kleinen Tabellen Jan bis Dez besteht, so dass ich hier leider keine Datenbanksituation vorliegen habe, also kein Indirektbezug zu den Monaten möglich ist. Vielen Dank im Voraus und herzliche Grüße, Galathea
2 Antworten
wenn Tabelle1 (die untereinander steht) in A1 losgeht geht es so:
=INDIREKT("Tabelle1!"&ADRESSE(SPALTE(A1);1))
das dann nach rechts rüberziehen und es werden die Daten die in Tabelle1 untereinander stehen gezogen.
wenn Tabelle1 in E9 losgeht lautet die Formel:
=INDIREKT("Tabelle1!"&ADRESSE(SPALTE(I1);5))
geht sie in B30 los:
=INDIREKT("Tabelle1!"&ADRESSE(SPALTE(AD1);2))
Hallo,
Ich habe bei Excel 2016 das gleiche Problem, komme mit dieser Formel aber auf kein Ergebnis. Liegt es an der neuen Version?
Zu meinem Problem.
Habe im Tabellenblatt "TR" eine Liste. Und Möchte im Tabellenblatt "AT" eine Matrix erstellen. Die Liste wird aber erst befüllt.
Die Angaben aus TR möchte ich quer anordnen. Dies will ich eben Automatisieren, weil die Liste bist zu 100 Angaben erhalten wird. Ich will dann mit einfachem nach rechts ziehen, die Angaben aus der Liste (Vertikal) in der Matrix (Horizontal ) spiegeln.
Kann mir da jemand weiterhelfen? Vielen Dank!
Syntax ist =ADRESSE(Zeile,Spalte) du willst pro Zug nach rechts eine Zelle nach unten. ich habe in diesem (dummen) Beispiel in AD angefangen weil das Spalte 30 ist. die 2 steht für Spalte 2 also B.
Einfacher und übersichtlicher wird es wenn du:
=INDIREKT("Tabelle1!"&ADRESSE(SPALTE(A1)+29;2)) nimmst, da hab ich trotteligerweise zu Beginn gar nicht dran gedacht.
Hier brauchst du nur die 2 austauschen gegen deine Spalte und 29=30-1 für die Startzeile.
Sorry ist mir auch gerade erst eingefallen.
Nee, alles bestens. Bei meinem Kommentar, dass es noch Unklarheiten gibt, hatte ich Deine zweite Erklärung noch nicht erhalten. Diese klärte dann alles auf. Hast Du gut und verständlich erläutert. Die Einrückungen meiner Kommentare stimmen nicht ganz.
Hallo augsburgchris, erstmal ein Riesenkompliment von mir. Hatte auch ein solches Problem und konnte es mit dieser tollen Formel lösen. Nur leider ist beim Bereich "IV" ja Schluss. Gibt es da eine Alternative wie man das erweitern könnte, da ich noch einiges mehr an Platz brauche bzw. eine Riesendatenmenge auf diese Art unterbringen bzw. darstellen möchte.
Kurz vielleicht noch zur Erklärung:
Indirekt ist klar: gibt den Wert der Zelle des als Text angegebenen Bezugs.
("Tabelle1!": sagt das die Verknüpfung auf einen anderen Tabelle ist.
&: Verknüpft Blattname mit der Adresse
ADRESSE(: Erzeugt eine aus Spalten und Zeilennummer eine Adresse der Form $A$1
die Syntax lautet: ADRESSE(Zeile; Spalte)
du möchtest nach rechts ziehen und dabei soll sich die Zeilennummer erhöhen ergo üssen wir das Argument Zeile flexibel gestalten: diesgeht über Spalte weil sich Spalte beim nach rechts zeihen erhöht. Nun noch die Startspalte finden die im Ausgangsblatt der Zeile enspricht: bei B30 muss die Startspalte also die 30. Spalte sein, also AD. Als Spalten der ADRESSE-Formel noch 2 für Spalte B angeben und dann nach rechts rüberziehen.
Achtung dies funtkioniert nur wenn der letzte Wert in der Ausgagnstabelle vor Zeile 256 steht Also maximal für den Bereich A1:IV256
Perfekt! Wie bisher immer! Ich bin so begeistert von Deinem und Oubyis Excelwissen. Ihr helft mir echt weiter und spart mir eine Menge Zeit. Das macht so richtig Spaß! DH und Stern :-) (Sorry, dass ich bei meinem Kommentar Oubyi gleich einbezogen habe.)
versuch mal Inhalte Einfügen.
dann "Formel" auswählen und unten das Häkchen bei "transponieren" setzen.
macht aus senkrechter, eine waagerechte anordnung
Im 2. AB in Feld (Z.B. c13) =Tabelle1!B2, dann nach unten Kopieren so weit wie nötig
einzeln die zellen anwählen und F4 drücken
in AB2 den Bereich markieren und kopieren
Jetzt genau das Feld (c13) markieren und
bearbeiten
Inhalte einfügen
Formeln
transponieren anwählen.
Dann wird der Inhalt nach rechts einkopiert (c13 wird mit Inhalt von C13 überschrieben, macht nix) und du kannst C14 bis Csonstwohin löschen.
Du hast recht, geht nicht! ich bitte um Entschuldigung. Ich werde versuchen mich sachkundig zu machen und dir im "Kompliment" zu antworten, wenn ich eine Lösung erfahre.
Nein, das funktioniert leider nicht. Auch das hatte ich bereits probiert. Aber trotzdem danke.
Vielen Dank, ausburgchris. Es hat etwas gedauert, bis ich die Formel auf meine Gegebenheiten anpassen konnte. Habe das Prinzip noch nicht verstanden. Warum z. B. heißt es in der Formel in Deinem 3. Beispiel (Beginn B30) ...(AD1);2...? Das Ergebnis stimmt, aber ich möchte es auch verstehen.