Bereich dynamisch gestalten.

Das Tabellenkalkulationsprogramm

Moderator: Moderatoren

ae
*
Beiträge: 11
Registriert: Mi, 08.03.2006 10:43
Wohnort: Reppenstedt bei Lüneburg
Kontaktdaten:

Bereich dynamisch gestalten.

Beitrag von ae »

Hallo zusammen,
analog zu XL Pivot gibt es ja in OO den Datenpilot.
Ich bin im Moment damit ein wenig am experimentieren.
Klappt soweit eigentlich auch alles gut, aber 2 Dinge habe ich noch nicht gelöst bekommen.

1. Wie kann ich einen Bereich in der Ursprungsliste dynamisch gestalten, daß sich wenn sich Zeilen und Spalten erweitern diese automatisch in der Pivottabelle aktualisieren?
In Excel löse ich das über Vergabe eines Namen und gebe den dann bei der Quelle statt des Bereichs von bis an.
.Dem Bereich gebe ich den Namen „Pivot_Daten“ und schreiben unter „bezieht sich auf:“ die Formel „=BEREICH.VERSCHIEBEN(Tabelle1!$A$1;;;ANZAHL2(Tabelle1!$A:$A);ANZAHL2(Tabelle1!$1:$1))“ hin.

Gibts da analog was in Datenpilot ?

2. Um automatisch beim Aktivieren des Tabellenblattes die Pivottabelle bzw. Datenpilottabelle aktualisieren zu lassen weise ich dem Activate_Ereignis des Tabellenblattes einen kurzen VBA-Code zu

Code: Alles auswählen

Private Sub Worksheet_Activate()

Dim pt As PivotTable

For Each pt In Me.PivotTables

   pt.RefreshTable

Next

End Sub
Wie müsste das denn in OO passieren ?

Danke schon mal vorab für alle Antowrten und Lösungsansätze und allen ein schönes Wochenende
Andreas
Gruß
Andreas E
"Man muss entweder englisch können, um mit der Welt zu korrespondieren, oder schwäbisch, um mit den wichtigen Menschen zu reden."
Lothar Späth
Gert Seler
*******
Beiträge: 1763
Registriert: Di, 03.10.2006 18:05

Re: Bereich dynamisch gestalten.

Beitrag von Gert Seler »

Hallo Andreas,
in Ooo_Calc ist dies die Funktion Verschiebung (siehe Hilfe unter "Verschiebung(Funktion)").

Oder lese mal das :

http://www.ooowiki.de/CalcFunktionenTab ... lladressen

mfg
Gert
Es gibt nichts gutes, außer man tut es.
Win7_64 / LO_4.4.5.2
ae
*
Beiträge: 11
Registriert: Mi, 08.03.2006 10:43
Wohnort: Reppenstedt bei Lüneburg
Kontaktdaten:

Re: Bereich dynamisch gestalten.

Beitrag von ae »

Hallo Gert,
danke für den Tipp
Das bringt mich schon ein wenig weiter. Allerdings schaffe ich es nicht, die Syntax aus Excel auf OO anzupassen

Wenn ich unter Einfügen Namen so arbeite:

Name:
MyRange
Zugeordnet zu:
=VERSCHIEBuNG(Tabelle1.$A$1;;;ANZAHL2(Tabelle1.$A:$A);ANZAHL2(Tabelle1.$1:$1))

bekomme ich nur eine Fehlermeldung

Hintergrund ist, daß ich den Bereich der Tabelle mit den Ursprungsdaten für den Datenpilot (Pivot) dynamisch halten möchte.
Damit meine ich, wenn Zeilen oder Spalten hinzukommen, sollen diese automatisch in die Bewertung einfliessen ohne den Pilot neu aufzubauen.

Vielleicht noch ne Idee dazu? Oder in Calc vielleicht eine ganz andere Vorgehensweise?
Gruß
Andreas E
"Man muss entweder englisch können, um mit der Welt zu korrespondieren, oder schwäbisch, um mit den wichtigen Menschen zu reden."
Lothar Späth
Benutzeravatar
balu
********
Beiträge: 3812
Registriert: Fr, 24.08.2007 00:28
Wohnort: Warstein

Re: Bereich dynamisch gestalten.

Beitrag von balu »

Moin moin Andreas,
ae hat geschrieben: Oder in Calc vielleicht eine ganz andere Vorgehensweise?
Nicht ganz. Aber die Schreibweise macht schon mal sehr viel aus, da Calc gerne die Parameter ausgefüllt haben möchte. So was

Code: Alles auswählen

=VERSCHIEBUNG(Tabelle1.$A$1;;;
und

Code: Alles auswählen

$A:$A
$1:$1
mag Calc einfach nicht!
Wenn ein Parameter nicht gebraucht wird, dann wird er NICHT durch Semikolons ausgeschaltet. Da sagt man lieber 0, oder man läßt ihn einfach wech. Und deshalb ist es für Umsteiger besser, wenn mit dem Funktionsautopiloten gearbeitet wird, denn dann sieht man was Optional ist, oder nicht, und wie Calc reagiert wenn ein Optionaler Parameter nicht gebraucht wird.
Zeilen und Spalten MÜSSEN ausgeschrieben werden.

Dementsprechend würde rein theoretisch deine Verschiebung wie folgt aussehen. {ungetestet}

Code: Alles auswählen

=VERSCHIEBUNG(Tabelle1.$A$1;ANZAHL2(Tabelle1.$A1:$A100);ANZAHL2(Tabelle1.A$1:X$1);1;1)
oder

Code: Alles auswählen

=VERSCHIEBUNG(Tabelle1.$A$1;1;1;ANZAHL2(Tabelle1.$A1:$A100);ANZAHL2(Tabelle1.A$1:X$1))
Da ich mich jetzt aber nicht in das Thema "Datenpilot" weiter eingearbeitet habe, kann ich dir nicht sagen ob die Formel jetzt schon so weit passt, oder aber ob da doch noch eventuell mit "FlexibleZelladressen" {wie von Gert erwähnt} gearbeitet werden muss.


Gruß
balu
Sei öfter mal ein Faultier, sag öfter mal "Ach was!" Dann kriegst du keinen Herzinfarkt, und hast ne menge Spass.

wehr rächtschraipfähler findet khan si behalden :D
ae
*
Beiträge: 11
Registriert: Mi, 08.03.2006 10:43
Wohnort: Reppenstedt bei Lüneburg
Kontaktdaten:

Re: Bereich dynamisch gestalten.

Beitrag von ae »

Hallo Balu,
das sieht schon mal ganz gut aus ! Danke !
Ich hab über eine einfache Zählenwenn(MyRange;3) mal einfach getestet inwieweit Calc den Bereich anpasst.
Das sieht gut aus und Calc reagiert wie gewünscht.
Nun werd ich mich mal dran machen und schauen, inwieweit ich beim Datenpilot schaffe durch diese Konstellation mit Namen die Ursprungsliste flexibel zu gestalten.
Danke für die Unterstützung und schönen Sonntag
Gruß
Andreas E
"Man muss entweder englisch können, um mit der Welt zu korrespondieren, oder schwäbisch, um mit den wichtigen Menschen zu reden."
Lothar Späth
Karolus
********
Beiträge: 7535
Registriert: Mo, 02.01.2006 19:48

Re: Bereich dynamisch gestalten.

Beitrag von Karolus »

Hallo
Mir gelingt es nicht dem Datenpiloten einen dynamischen Quellbereich innerhalb des Dokuments zuzuweisen, daher hab das per Schaltfläche + Zellformel +Makro gelöst.
Datenpilot_refresh_test.ods
(14.56 KiB) 199-mal heruntergeladen
Gruß Karo
LO25.2… debian 13( trixie ) auf Raspberry5 8GB (ARM64)
LO25.8… flatpak debian 13( trixie ) auf Raspberry5 8GB (ARM64)
ae
*
Beiträge: 11
Registriert: Mi, 08.03.2006 10:43
Wohnort: Reppenstedt bei Lüneburg
Kontaktdaten:

Re: Bereich dynamisch gestalten.

Beitrag von ae »

Hallo Karo,
ich bin zwischenzeitlich auch am Verzweifeln -:)
Die in XL problemlos funktionierende Formel lässt sich scheinbar doch nicht sauber in OOCalc umsetzen.
Werde mir gleich mal deinen Lösungsansatz anschauen.
Gruß
Andreas E
"Man muss entweder englisch können, um mit der Welt zu korrespondieren, oder schwäbisch, um mit den wichtigen Menschen zu reden."
Lothar Späth
ae
*
Beiträge: 11
Registriert: Mi, 08.03.2006 10:43
Wohnort: Reppenstedt bei Lüneburg
Kontaktdaten:

Re: Bereich dynamisch gestalten.

Beitrag von ae »

Hy Karo,
ich hab mir das Ganze eben angesehen.
Passt mit Deiner Lösung hervorragend.
Schade, hätte mir eine Makrofreie Lösung gewünscht - aber scheinbar ist das in Calc so einfach nicht machbar.
Gruß
Andreas E
"Man muss entweder englisch können, um mit der Welt zu korrespondieren, oder schwäbisch, um mit den wichtigen Menschen zu reden."
Lothar Späth
Karolus
********
Beiträge: 7535
Registriert: Mo, 02.01.2006 19:48

Re: Bereich dynamisch gestalten.

Beitrag von Karolus »

Hallo
Schade, hätte mir eine Makrofreie Lösung gewünscht
Na ja, deine bisherige Excel-lösung ist ja auch nicht völlig VBA-frei.

Eine Lösung analog zu Excel die auf den Wechsel des Arbeitsblatts reagiert hätte wesentlich mehr Code erfordert.

Gruß Karo
LO25.2… debian 13( trixie ) auf Raspberry5 8GB (ARM64)
LO25.8… flatpak debian 13( trixie ) auf Raspberry5 8GB (ARM64)
ae
*
Beiträge: 11
Registriert: Mi, 08.03.2006 10:43
Wohnort: Reppenstedt bei Lüneburg
Kontaktdaten:

Re: Bereich dynamisch gestalten.

Beitrag von ae »

Hallo Karo,
stimmt - das automatische Refresh beim Wechseln in die Tabelle ist auch in XL ein paar wenige Zeilen Code.
Aber das anpassen der Bereiche durch Formel ist eben auch etwas was ich in anderen Auswertungen gerne und oft nutze.
Beispielsweise um Dropdowns über Daten-Gültigkeit - Liste dynamisch zu füllen. Im Grunde kann man dieses Bereich:Verschieben (oder in Calc Verschiebung) eben sehr schön einsetzen um in "wachsenden Tabellen" nicht permanent Bereiche anpassen zu müssen.
Aber sei es drum, Deine Lösung funktioniert ja bestens - und nur das zählt letzten Endes.
Gruß
Andreas E
"Man muss entweder englisch können, um mit der Welt zu korrespondieren, oder schwäbisch, um mit den wichtigen Menschen zu reden."
Lothar Späth
Benutzeravatar
lorbass
********
Beiträge: 4116
Registriert: Mo, 01.05.2006 21:29
Wohnort: Bonn

Re: Bereich dynamisch gestalten.

Beitrag von lorbass »

guckguck hat geschrieben:Weiß jemand, wie der Befehl "=BEREICH.VERSCHIEBEN($A$1;;;ANZAHL2($A:$A);ANZAHL2($1:$1))" im Excel mit englischsprachigen Layout formuliert werden muss?
Mit Fragen zu Winzigweich Excel solltest du dich an ein Excel-Forum wenden. Hier geht's um OpenOffice.org Calc.

Gruß
lorbass
Karolus
********
Beiträge: 7535
Registriert: Mo, 02.01.2006 19:48

Re: Bereich dynamisch gestalten.

Beitrag von Karolus »

LO25.2… debian 13( trixie ) auf Raspberry5 8GB (ARM64)
LO25.8… flatpak debian 13( trixie ) auf Raspberry5 8GB (ARM64)
ae
*
Beiträge: 11
Registriert: Mi, 08.03.2006 10:43
Wohnort: Reppenstedt bei Lüneburg
Kontaktdaten:

Re: Bereich dynamisch gestalten.

Beitrag von ae »

Hallo zusammen,
Ich zieh schonmal vorsichtshalber den Kopf ein -
aber da der Frager wohl doch die XL-Übersetzungen braucht hier der Link zu einer Liste zum Download
http://www.multijobbing.de/excelfaq/ind ... artlang=de

Viele Grüße @all
Andreas
Gruß
Andreas E
"Man muss entweder englisch können, um mit der Welt zu korrespondieren, oder schwäbisch, um mit den wichtigen Menschen zu reden."
Lothar Späth
Antworten