Werte aus verschiedenen Calc-Dateien zusammenführen

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

quelle36
Beiträge: 1
Registriert: Mo, 12.10.2009 23:51

Werte aus verschiedenen Calc-Dateien zusammenführen

Beitrag von quelle36 »

Hallo zusammen!

um aus ca. 100 Calc-Dateien (mit je einem Tabellenblatt) die Werte aus dem Bereich B1:G45 in eine einzige Tabelle zusammenzuführen, möchte ich ein Makro erstellen, das aus der ersten Datei im Verzeichnis den Bereich B1:B45 kopiert in die 'Zusammenfassung' in gleiche Position, danach jeweils Bereich C1: C45 nach 'Zusammenfassung' B46:B90, dann D1:D45 nach "Zusammenfassung" B91:B135 usw. Die Daten der zweiten und aller folgenden Dateien sollen in gleicher Weise jeweils um eine Spalte weiter eingefügt werden.
Ich wäre dankbar für einen Tipp, vielleicht hat ja jemand so etwas ähnliches schon mal erarbeitet oder gesehen.

Gruß aus Bielefeld! Bernd Lehne
clag
********
Beiträge: 3570
Registriert: Di, 27.01.2009 15:30

Re: Werte aus verschiedenen Calc-Dateien zusammenführen

Beitrag von clag »

moin quelle36,

ich habe von StarBasic wenig Ahnung aber für dein Anliegen scheint mir eher eine Formellösung geeignet.
ich würde aber die Zellen lieber aktiv verknüpfen, ist dann auch mit wenigen Mausklicks erledigt und da so vorgehen:
(falls du nicht weißt wie)

öffne deine neu Tabelle in der du zusammenfassen möchtest
öffne zusätzlich die ersten 10 auszuwertenden Dateien
in B1 der neuen Tabelle schreibst du ein = dann wechselst du auf die erste Tabelle die du auswerten möchtest und klickst dort mit der Maus in die Zelle B1 und mit Enter abschließen.
in C1 der neuen Tabelle schreibst du ein = dann wechselst du auf die zweite Tabelle die du auswerten möchtest und klickst dort mit der Maus in die Zelle B1 und mit Enter abschließen.
in D1 der neuen Tabelle schreibst du ein = dann wechselst du auf die dritte Tabelle die du auswerten möchtest und klickst dort mit der Maus in die Zelle B1 und mit Enter abschließen.
usw bis Tabelle 10
nun sollte zB in B1 ca so etwas "='file:///C:/Dokumente und Einstellungen/User/Eigene Dateien/linktest1.ods'#$Tabelle1.B1" stehen
jetzt markierst du die Zellen B1:K1 und ziehst an der rechten unteren Ecke den Bereich bis K45

und schon ist der erste Teil fertig
für den Rest in gleicher Manier vorgehen

das geht bestimmt auch viel schneller wie ein Makro schreiben, jedenfalls bei mir :lol:

edit:
überflüssiges entfernt
LG
clag

nutzt: WinXP SP3 / AOO 4.1.10 / Firefox
turtle47
*******
Beiträge: 1849
Registriert: Mi, 04.01.2006 20:10
Wohnort: Rheinbach

Re: Werte aus verschiedenen Calc-Dateien zusammenführen

Beitrag von turtle47 »

Hallo Zusammen,
quelle36 hat geschrieben:um aus ca. 100 Calc-Dateien (mit je einem Tabellenblatt) die Werte aus dem Bereich B1:G45 in eine einzige Tabelle zusammenzuführen
clag hat geschrieben:nun sollte zB in B1 ca so etwas "='file:///C:/Dokumente und Einstellungen/User/Eigene Dateien/linktest1.ods'#$Tabelle1.B1" stehen
Auf Grund der Anzahl der Verknüpfungen kann das nicht funktionieren. :(


Man beachte aber bitte folgendes:
Balu hat geschrieben:Denn bei der ='file... Lösung, übrigens ist das auch der Fall bei dem Makro, werden die ausgewählten Tabellenblätter aus den einzelnen Verknüpften Dateien in der "Übersichts-Datei" versteckt eingebunden
......

Diese Art von Verknüpfung ist aber auch einem Limit unterlegen, welches bei 256 liegt
Siehe dazu bitte auch folgenden Beitrag

Jürgen
Software hat keinen Verstand - benutze deinen eigenen...!

Win 7 SP1/ LibreOffice 3.4.2 OOO340m1 (Build:203) / Firefox 15.0.1 / Notebook ASUS K70IO 64 Bit-Betriebssytem
clag
********
Beiträge: 3570
Registriert: Di, 27.01.2009 15:30

Re: Werte aus verschiedenen Calc-Dateien zusammenführen

Beitrag von clag »

Hi

@ turtle47
turtle47 hat geschrieben:Auf Grund der Anzahl der Verknüpfungen kann das nicht funktionieren. :(
wenn ich es richtig verstanden habe, möchte quelle36 die Werte aus B1:G45 in einer Spalte der Tabelle "Zusammenfassung" und dort untereinander darstellen,
dann werden doch nur 100 Spalten benötigt, oder !?

noch einfacher könnte es sein wenn man mit einer Formel eine Verknüpfung erstellen könnte,
habe ich aber nicht hin bekommen kommt immer Text bei raus :(

kann man denn nicht aus verketten oder ="=" & A1 & "*******" eine Verknüpfung generieren oder so ?
LG
clag

nutzt: WinXP SP3 / AOO 4.1.10 / Firefox
turtle47
*******
Beiträge: 1849
Registriert: Mi, 04.01.2006 20:10
Wohnort: Rheinbach

Re: Werte aus verschiedenen Calc-Dateien zusammenführen

Beitrag von turtle47 »

Hallo,


ich nehme alles zurück und behaupte das Gegenteil. :oops:

Sorry, aber ich war der Meinung, dass je Verknüpfung ein Tabellenblatt im Hintergrund gespeichert wird. :?
Das ist natürlich völliger Blödsinn. So lange immer nur auf eine Tabelle in einer der 100 Dateien zugegriffen wird, werden eben nur 100 Tabellen im Hintergrund angelegt.

Jürgen
Software hat keinen Verstand - benutze deinen eigenen...!

Win 7 SP1/ LibreOffice 3.4.2 OOO340m1 (Build:203) / Firefox 15.0.1 / Notebook ASUS K70IO 64 Bit-Betriebssytem
Benutzeravatar
balu
********
Beiträge: 3812
Registriert: Fr, 24.08.2007 00:28
Wohnort: Warstein

Re: Werte aus verschiedenen Calc-Dateien zusammenführen

Beitrag von balu »

Hallo Leute,

@Bernd
Wenn es unbedingt per Makro sein soll, dann kann ich dir da auch nicht weiterhelfen, weil das nicht meine Welt ist.
Falls Du aber auch mit einer alternative einverstanden wärst, dann würde ich dir vorschlagen dich mit =DDE() mal zu befassen. Oder Du kombinierst beides, so wie Jürgen es in dem von ihm verlinkten Beitrag gemacht hat.


@clag
Eine Fileverknüpfung via 'file:///... ist noch einer ganz anderen Einschränkung unterlegen. Damit die Verknüpfungen in der geöffneten Ziel-Datei übernommen werden können, muss die Quell-Datei erst gespeichrt werden nachdem sich dort etwas geändert hat.

Nimmt man jetzt allerdings =DDE() und man ändert die Quell-Datei, wird das innerhalb weniger Sekunden in der geöffneten Ziel-Datei automatisch übernommen ohne das die Quell-Datei erst gespeichert werden muss. Die Änderungen werden so gesehen Live übernommen.
noch einfacher könnte es sein wenn man mit einer Formel eine Verknüpfung erstellen könnte,
habe ich aber nicht hin bekommen kommt immer Text bei raus
Ich weiss ja jetzt nicht wie Du da jetzt im einzeln vorgegangen bist, aber bei einer normalen Fileverknüpfung via 'file:///... dürfte es doch keine Probleme geben. Alternativ schlage ich dir auch die =DDE() vor.



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
clag
********
Beiträge: 3570
Registriert: Di, 27.01.2009 15:30

Re: Werte aus verschiedenen Calc-Dateien zusammenführen

Beitrag von clag »

Hi Balu und natürlich alle Anderen,

die Verwendung von DDE() ist natürlich eleganter und hat bestimmt einige Vorteile,
aber man kann die Tabelle wahrscheinlich doch nicht nicht so schnell mit der Maus zusammen klicken wie bei Verweisen

aber letztlich ist entscheidend was quelle36 erreichen will, das war nicht so präzise beschrieben
einmalige Übernahme oder permanente Aktualisierung oder ......

den DDE link werde ich mir auch noch etwas intensiver reinziehen, man lernt ja immer gern dazu :D

vielleicht äußert sich die quelle ja noch was bezweckt war ;)
LG
clag

nutzt: WinXP SP3 / AOO 4.1.10 / Firefox
Antworten