Seite 1 von 1

Problem beim Zusammensetzen von Adressen

Verfasst: Sa 3. Dez 2016, 19:20
von raheri
Liebe Calc-Gemeinde,
ich bin ganz neu in diesem Forum und ausserdem ein blutiger Calc-Anfaenger. Bitte seht mir nach, wenn ich ein laengst geloestes Problem ansprechen sollte... es ist wohl auch recht einfach.
Ich moechte Daten aus mehreren Arbeitsblaettern in einem zusaetzlichen Analyse-Blatt zusammenstellen. Aus dem Namen der Arbeitsblaetter ist ihr Erstellungsdatum ablesbar: 2016_12_03, 2016_12_10 usw. Die Daten aus einem Arbeitsblatt werden im Analyse-Blatt in einer Spalte zusammengefasst. In die Kopfzeile dieser Spalte trage ich den Namen des jeweiligen Arbeitsblatts (z.B. 2016_12_10) ein. Darunter werden die Daten eingesammelt:, z.B. =SVERWEIS($B14;2016_12_10.$M$5:$W$27;9). Das funktioniert so lange, wie ich in der Formel ein Arbeitsblatt direkt anspreche. Jetzt soll die Bereichsadresse 2016_12_10.$M$5:$W$27 aber selbststaendig zusammengebaut werden aus der Kopfzeile und dem fixen Part des Zellenbereich. Ich habe alles Moegliche probiert, scheitere aber immer an der Syntax. Koennt Ihr mir helfen?
raheri

Re: Problem beim Zusammensetzen von Adressen

Verfasst: Sa 3. Dez 2016, 19:44
von mikele
Hallo und willkommen,
das Zauberwort heißt Indirekt ()

Code: Alles auswählen

=indirekt (verketten (a1;".$M$5:$W$27"))
wenn z. B. in A1 der Tabellenname steht.

Re: Problem beim Zusammensetzen von Adressen

Verfasst: Sa 3. Dez 2016, 20:40
von raheri
Hallo Mikele,
danke, dass Du so schnell geantwortet hast :). Auf INDIREKT bin ich bei meiner Netzrecherche auch schon gestossen. Ich muss nochmal fragen, wie ich es einsetzen soll? Ich brauche es als Unterbefehl in sverweis, weil die Daten in den Arbeitsblaettern in unterschiedlichen Zeilen stehen koennen. Daher sucht sverweis erst die Zeile mit dem Begriff von B14 und von da aus in der 9. Spalte meinen Zielwert. Sorry, haette ich vorher erwaehnen sollen. Wenn ich naiv einsetze =SVERWEIS($B7;INDIREKT (VERKETTEN (C2;".$M$5:$W$27"));9) erhalte ich aber #NV. Kann wohl auch nicht gehen, soweit ich INDIREKT verstanden habe, gibt es den Wert einer einzelnen Zelle zurueck in SVERWEIS muss ich aber eine Suchmatrix angeben.
Gruesse
raheri

Re: Problem beim Zusammensetzen von Adressen

Verfasst: Sa 3. Dez 2016, 21:10
von craig
Hallo,

Du hast alles richtig erkannt.
Dies funktioniert bei mir.

Code: Alles auswählen

=SVERWEIS($B7;INDIREKT (VERKETTEN (C2;".$M$5:$W$27"));9)
Die Matrix wird durch das Verketten gebildet.
Siehe Calc-Hilfe zu Indirekt:
Ergibt den durch eine Zeichenfolge angegebenen Bezug. Diese Funktion kann auch einen Bereich aus einer entsprechenden Zeichenfolge erzeugen.
Der Fehler wird vermutlich dadurch erzeugt, weil in der Zelle C2
der Blattnamen falsch geschrieben wurden. Ggf. ein Leerzeichen zuviel, etc.

Gruß

Craig

Re: Problem beim Zusammensetzen von Adressen

Verfasst: Sa 3. Dez 2016, 23:24
von raheri
Hallo Mikele und Craig,
ich danke Euch. Jetzt funktioniert es. Irgendwie war mir beim Rumprobieren der letzte Parameter Sortieroption in SVERWEIS abhanden gekommen. Mit einer 0 klappt es jetzt. In diesem Zusammenhang eine andere Frage. Kann man Arbeitsblaetter auch ueber ihren Index ansprechen oder braucht man dafuer ein Makro?
Schoenen Sonntag
raheri

Re: Problem beim Zusammensetzen von Adressen

Verfasst: Sa 3. Dez 2016, 23:38
von craig
Hallo,

es gibt die Funktion Tabelle und die Funktion Tabellen.
Ist aber meines Wissens nach nicht verwendbar, um von
Tabelle2 eine Adressierung auf Tabelle1 zu erreichen.
siehe LO-Hilfe

Mittels Makro ist dies kein Problem, die Zählung beginnt hierbei bei Tabelle 0

Code: Alles auswählen

REM  *****  BASIC  *****

Sub xBasics
Dim oDoc as Object
Dim oSheet as Object
' aktuelles Dokument
oDoc =thiscomponent
	' Zugriff auf Sheet 0
	oSheet =oDoc.Sheets().getByindex(0)
End Sub
Auch Dir einen schönen Sonntag.

Gruß

Craig