Daten aus externer Tabelle übernehmen

Das Tabellenkalkulationsprogramm

Moderator: Moderatoren

Spacecop
***
Beiträge: 69
Registriert: So, 10.08.2008 21:09
Wohnort: Auetal
Kontaktdaten:

Re: Daten aus externer Tabelle übernehmen

Beitrag von Spacecop »

Macht doch nix.

:D

Tom
Benutzeravatar
balu
********
Beiträge: 3812
Registriert: Fr, 24.08.2007 00:28
Wohnort: Warstein

Re: Daten aus externer Tabelle übernehmen

Beitrag von balu »

Hallo Tom.

Konnte mich vor dem anderen noch mal kurz drücken, und deshalb habe ich deinen Fehler schon lokalisiert. 8)

In D5 und H5, wo Du meine Formel "reingepasst" hast, musst Du nur eine kleinigkeit ändern. Der fehler ist nämlich, das der Zellbezug zu deiner Hilfsspalte am Wochenende nicht mehr passt. Weil von Mo-Fr Du dich auf C36 (C37) beziehst, was ja auch korrekt ist, nur am WE musst Du dich dann ja auf C39 (C40) beziehen. Und nun musst Du die Formeln wie Folgt ändern.
Formel in D5:
Überall da (2x) wo C36 steht, setzt Du stattdessen folgende Formel ein, und zwar genau so wie sie hier steht.

Code: Alles auswählen

WENN(WOCHENTAG(K3;2)>=6;C39;C36)
Formel in H5:
Überall da (2x) wo C37 steht, setzt Du stattdessen folgende Formel ein, und zwar genau so wie sie hier steht.

Code: Alles auswählen

WENN(WOCHENTAG(K3;2)>=6;C40;C37)
Tja, und as war schon die ganze Herlichkeit. Mehr musst Du nicht machen. :D



Viel Spaß
balu




p.s: Bin nun abba wech :wink:
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
Benutzeravatar
balu
********
Beiträge: 3812
Registriert: Fr, 24.08.2007 00:28
Wohnort: Warstein

Re: Daten aus externer Tabelle übernehmen

Beitrag von balu »

Hallo Tom.

Da bin ich schon wieder. :D

Hatte heute nur Bock auf Design angelegenheiten, es juckte mir in den Fingern. Zumal Du ja doch schon meine Formel sinnvoll eingesetzt hattest. Und da dachte ich mir, dass ich dir eine kleine Freude bereite, und die Sache mit den DA's im "Old-Layout" zu ende bringe. :lol:

Meine Erklärung von vorhin mit der Fehlerbeseitigung ist wohl ganz gut und schön, aber die habe ich jetzt auch schon wieder modifiziert. Das ich sie dir erklärt habe, war aber zwecks verstehen nicht von Nachteil. Nur in meiner neuen Version sieht das jetzt etwas anders aus, und Du brauchst jetzt auch keine Hilfsspalte mehr.
Denn Du suchst ja z.B. bei Tag immer nach den Buchstaben "T" und "LT", und die kann man doch auch direkt in die Formel eingeben.
Statt

Code: Alles auswählen

WENN(WOCHENTAG(K3;2)>=6;C39;C36)
wird jetzt

Code: Alles auswählen

WENN(WOCHENTAG(K3;2)>=6;"LT";"T")
daraus.

Analog bei den anderen genau so. Und da ja der "Bedarf" ab Freitag frei hat, braucht er ja dann auch nicht mehr dort aufgeführt werden.

Wie gesagt, ist jetzt nur Design gewesen, aber das braucht man mal so zwischendurch. Wünsche Dir viel Spaß damit :lol:



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
Spacecop
***
Beiträge: 69
Registriert: So, 10.08.2008 21:09
Wohnort: Auetal
Kontaktdaten:

Re: Daten aus externer Tabelle übernehmen

Beitrag von Spacecop »

*wirr*

Das versteh ich jetzt nicht....

Dafür hab ich aber ein paar neue Wünsche....
Ich bin mal so unverschämt und geb die Wünsche so weiter, wie sie an mich weitergegeben wurden:

1. Eine gesamte Übersicht des Jahresschichtplanes, so ähnlich wie ich das in der Excel Datei hatte, als Tabellenblatt
2. Im "Old_layout" sollen nicht die Namen festgeschrieben werden, sondern die in den ersten beiden Zeilen pro Schicht die Funktion. also immer KvL bzw. ELB.
In den unteren 2 Zeilen jeder Schicht soll dann ein DropDownMenü sein für Name und Funktion. Das bekomm ich aber alleine hin.
3. Eine Urlaubsvorplanung, die am besten neben dem aktuellen Tagesplan zu sehen ist. ich vermute, daß noch jemand drauf kommt, daß dann aus dem Urlaubsplan die vorgeplanten Urlaube der Mitarbeiter automatisch in den Tagesdienstplan übernommen werden. (Ich hasse Schachtelsätze :lol: )

bin mal gespannt, was noch kommt.....

Gruß
Tom
Benutzeravatar
balu
********
Beiträge: 3812
Registriert: Fr, 24.08.2007 00:28
Wohnort: Warstein

Re: Daten aus externer Tabelle übernehmen

Beitrag von balu »

Hallo Tom,

hab mal wieder Tiefbauingerneur gespielt, und ein neues Tabellenblatt eingefügt. Eigentlich sind es insgesammt 5 eingefügte, aber nur eins davon ist jetzt von Bedeutung.
Dieses Blatt heißt "Tabellenblätter_abfragen", und der Name ist programm. Dort geht es nur um Berechnungen.

Ich dachte mir, dass ich jetzt mal anfange die einzelnen Mitarbeiter aus dem "Old-Layout" rausfiltere um danach die Arbeitsstunden auszurechnen. Dazu habe ich erstmal das Old... in 28_08 umbenannt, um eine "Konstante" zu haben mit der man Arbeiten kann. Mein Gedanke dabei war:
"Wenn so die einzelnen Tabellenblätter benannt sind (mit Tag_Monat), dann kann man mittels einer Datumsspalte, in einem anderen Blatt, schneller und einfacher nach dem gewünschten Blatt suchen."
Das funktioniert ja auch noch recht einfach mit folgender Formel (als Beispiel):

Code: Alles auswählen

ISTFEHLER(INDIREKT(ADRESSE(1;1;4;TEXT($A17;"TT")&"_"&TEXT($A17;"MM"))))
Wenn auf diese Weise festgestellt wurde, das z.B. das Blatt 27_08 vorhanden ist, geht es mit der eigentlichen Namenssuche weiter. Dazu habe ich folgende Formel eingesetzt (auch nur als Beispiel).

Code: Alles auswählen

INDIREKT(TEXT($A17;"TT")&"_"&TEXT($A17;"MM")&".C"&WENN($A17<>$A16;7;7+ZÄHLENWENN($A$4:$A17;$A16)-1))
[[
Was vor dem ".C" geschieht, ist recht einfach. Aus der Zelle A17 wird erst der Tag "TT" ausgelesen, dann der Unterstrich "_" gesetzt, und danach aus der gleichen Zelle der Monat "MM" ausgelesen. Und so entsteht der Tabellenname 27_08.
Um aber aus diesem Blatt einen Namen rauszufischen, wird noch die Zelladresse benötigt. Das geschieht nach dem ".C"
Da der Bereich z.B. bei Früh 6 Zeilen umfasst, also von C7 bis C12, habe ich dementsprechend auch einen gleich großen Bereich von 6 Zeilen für die Auswertung erstellen müssen. Da aber das Programm nicht von alleine drauf kommt, wo Start und wo Ende ist, muss jetzt getrickst werden.
In diesem teil der Formel will ich nur eine Zahl ermitteln, um z.B C7 rauszubekommen. Da der ausgabebereich 6 Zeilen umfasst, und die Datumsspalte links daneben jeden Tag 6 mal untereinander anzeigt, steht also eine Zeile davor und danach jeweils ein anderes Datum drin. Es ist also ungleich "<>". Dadurch wird jetzt die 7 zurück gegeben, und ich habe jetzt C7.
Aber eine Zeile tiefer ist das Datum nicht mehr ungleich mit dem jetzigen Datum, und nun will ich C8 rausbekommen. Und da die 8 um 1 größer ist als die 7, muss jetzt das ausgerechnet werden. Dazu zähle ich wie oft das jetzige Datum in dem Bereich von $A$4 bis $A18 vorkommt. In diesem Fall 2 mal. Das ist aber ein mal zuviel, und muss deshalb eins abziehen "-1". Jetzt ergibt 7+1=8, und somit habe ich nun C8. Das ganze wiederholt sich insgesammt 4 mal, dann sind die 6 Zeilen abgearbeitet.
Ach ja! Bin vergesslich.
Die Formel besteht aus zwei Teilen, und dementsprechend habe ich zwei erarbeitete Ergebnisse.
Der erste Teil liefert 27_08
Der zweite Teil liefert .C7
Und so eribt sich jetzt folgende Adresse
27_08.C7
Und damit wird der Zellinhalt aus dem Tabellenblatt 27_08 aus der Zelle C7 ausgegeben, egal ob da was drin steht, oder nicht.


So weit! So gut!
Das funktioniert alles wunderbar.
ABER!!!!
Wenn ich das für ein ganzes Jahr mache, und dabei jeden Tag 6 mal aufführe(ergibt 2196 Zeilen), und das für jede Schicht wiederhole (also insgesammt 10 mal, inklusive Service) dann Explodiert die Dateigröße auf ca. 240 KB, und damit ist hier für den Anhang viel zu groß.
Das ist aber noch nicht mal das schlimmste, denn das ist nämlich der enorme Rechenaufwand den Calc da zu leisten hat.

Mein System:
AMD XP2,2GHz
RAM 756 MB

Zeitmessungen:
Datei öffnen = 1 minute 15 sekunden.
Automatisches zwischenspeichern für AutoWiederherstellungsInfo = auch so ca. 1 minute.
Datei erstspeichern = ca. 45 sekunden.

Wenn Du sie dir trotzdem mal anschauen willst, musst du sie dir bei der datenschleuder downloaden. Hier der Dl-Link: SCHICHTPLAN_Einzelblätter-abfragen
Im anhang befindet sich eine abgespeckte Version davon.

Bitte verzeih, wenn ich durcheinander schreibe, aber ich hab jetzt einfach zu lange daran gesessen, um noch sortiert zu schreiben.

Technisch gesehen ist mit Formellösungen vieles machbar. Aber um ehrlich zu sein, muss ich sagen das nicht alle eure Wünsche so einfach umzusetzen sind. Ich weiss ja nicht wie ihr das bis jetzt mit Excel gehandhabt habt, aber irgendwo müssen noch nicht erprobte wünsche gegenüber dem technisch machbaren hinten angestellt werden.
Will damit z.B. sagen, dass es aus rein programmiertechnischen gründen besser ist, nicht jeden Tag ein neues Tabellenblatt für den aktuellen Tag einzufügen. Denn so muss jedesmal erst überprüft werden, ob ein bestimmtes Blatt vorhanden ist, oder nicht. Und das geht mit der Zeit in die selbige.

Mag sein das ich irgendwann und irgendwo etwas missverstanden habe, aber darüber denke ich heute nicht mehr nach. Denn ich will in die Heia und Bubu machen.


Bild Bild Bild Bild

balu




[edit]
In dieser Datei sind doch mehr als nur 5 Blätter hinzugekommen.
Dateianhänge
SCHICHTPLAN_Old-Layout_modifiziert_Einzelblätter-abfragen.ods
(117.67 KiB) 118-mal heruntergeladen
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
Benutzeravatar
balu
********
Beiträge: 3812
Registriert: Fr, 24.08.2007 00:28
Wohnort: Warstein

Re: Daten aus externer Tabelle übernehmen

Beitrag von balu »

Hallo Tom,

habe meinen Basteltrieb nicht beherschen können, und so hab ich die letzte Datei (die abgespeckte) in der geschwindigkeit verbessert. Und gleichzeitig habe ich jetzt in der aktuellen version eine kleine primitive abfrage, für einen Mitarbeiter plus Funktion, eingebaut. Es gibtg dazu noch ein paar fragen, aber dazu habe ich heute keine Lust mehr.

Gruß
balu
Dateianhänge
SCHICHTPLAN_Optimiert_mit_Teil_Auswertung.ods
(115.75 KiB) 117-mal heruntergeladen
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
Spacecop
***
Beiträge: 69
Registriert: So, 10.08.2008 21:09
Wohnort: Auetal
Kontaktdaten:

Re: Daten aus externer Tabelle übernehmen

Beitrag von Spacecop »

Moin,

jetzt hat es mich am WE etwaws aus den Schuhen gehauen... krankheitsbedingt.
Deshalb war ich am WE auch nicht online.
Das Schlucken fällt immernoch schwer und die Stimme ist auch noch nicht ganz da.

Aber das nur nebenbei.

Also bevor ich jetzt auf die einzelnen Änderngen eingehe, weil ich mal grundsätzlich was sagen:

So langsam verliere ich den Überblick. :shock:

Bisher hat mir die Datei "SCHICHTPLAN_rotierende-DAs_mit_Old-Layout" am besten gefallen. Dieses Weiterschalten von Tag zu Tag war klasse.
Ich denke, daß die Generierung eines Tabellenblattes für jeden Tag das ganze wieder unübersichtlich und langsam macht.

Wenn es machbar wäre, daß die Daten, die in das Old-Layout eingegeben werden in der "Allgemeindatei" und in einer "Admindatei" gespeichert werden, wäre das erstmal ausreichend.
Dazu vielleicht noch in einem gesonderten Tabellenblatt ein "Jahresschichtdienstkalender" und "Urlaubsplaner" mit Dropdownmenü für die Namen.
Momentan arbeiten wir mit einem separaten Stundenblatt, daß wir "von Hand" ausfüllen (ist auch eine CALC-Datei). Dieses wird monatlich ausgedruckt und zdA (zu den Akten) gelegt. Das jetzt nicht unbedingt ein Mehraufwand, so daß die Stundenberechnung nicht unbedingt mit in die Dienstplangestaltung einfließen muß. Wenn es technisch möglich ist und nicht zu kompliziert, dann ja, ansonsten eher nein.

Es wäre also ausreichend eine Datei zu haben, die X Tabellenblätter hat - für die Tagesübersicht mit Weiterschaltung, eine Wochenübersicht, Jahresschichtplan und Urlaubsplan. Wobei automatisiert die Eintragungen aus der Tagesübersicht in die Wochenübersicht und in die "Admin-Datei" übertragen werden sollten (so wie oben schon erwähnt). die Admin-Datei sollte also ein Spiegel der "Allgemein-Datei" sein.
Schön wäre noch wenn die Urlaubsübersicht auch automatisiert in die Tages- und Wochenübersicht übernommen werden könnte.

Ich denke, daß würde für den Anfang reichen.
Wenn Du, wir, daß dann fertig haben, dann könnte man vielleicht die Stundenberechnung in Angriff nehmen. Aber da hängt noch soviel mit dran.
Übrigens, wenn Du möchtest, dann kann ich Dir auch den Service-Dienstplan zukommen lassen. Das ist allerdings eine Excel-Tabelle.

Ich hoffe ich bin Dir jetzt nicht auf den Schlips getreten, wo Du Dir doch schon sooooooooooooooo viel Mühe gegeben hast. :roll:

Gruß
Tom
Benutzeravatar
balu
********
Beiträge: 3812
Registriert: Fr, 24.08.2007 00:28
Wohnort: Warstein

Re: Daten aus externer Tabelle übernehmen

Beitrag von balu »

Hallo Tom,

ich wünsch dir erst mal gute Besserung :D . Kopf hoch, wird schon wieder werden.
Spacecop hat geschrieben: Ich denke, daß die Generierung eines Tabellenblattes für jeden Tag das ganze wieder unübersichtlich und langsam macht.
Ich muss gestehen, da hab ich mich in eine Sache verbissen, und im nachhinein wohl etwas falsch verstanden. Kann leider mal vorkommen.
Also, Du möchtest in das "Old-Layout" die Namen und Funktionen pro Schicht eingeben, und diese Daten sollen dann in eine "Zentrale-Verwaltungs-Datei" (Admindatei) übernommen werden. Wenn neue Daten in "Old-Layout" eingegeben werden, dann sollen diese automatisch an der richtigen Stelle in der "Admindatei" eingetragen werden. So das sie kontinuierlich und chronologisch immer weiter anwächst.
Mit anderen Worten.
In "Old-Layout" wählst Du z.B. das Datum 02.09 aus, und gibst die Daten ein. Und in der "Admindatei" werden dann diese Daten mit dem richtigen Datum (02.09) eingetragen. Neues Datum im Old..., neuer zusätzlicher eintrag in Admin... Die Old... bleibt in ihrer größe unverändert, während die Admin... anwächst. So gesehen ist die Admindatei eine Sammeldatei.

Nun, auch wenn es im ersten augenblick nicht danach aussieht, so ist das neue Tabellenblatt "Tabellenblätter_abfragen" im groben und ganzen das, was Du dir wünscht. Okay, sie ist jetzt noch mit in einer Datei, kann aber "Ausgelagert" werden. Das Prinzip ist ja fast das gleiche, nur die Formeln müssen dementsprechend geändert und angepasst werden.

Ich hatte mir schon so was gedacht (war mir aber nicht sicher), und wollte erst mal sehen, wie das technisch überhaupt zu realisieren ist. Denn, in dieser hinsicht muss ich selber erst noch das eine oder andere dazulernen, und mal ausprobieren.


Ich mache dir jetzt den Vorschlag, das ich nun daher gehe, und dieses Thema mit den zwei Dateien, in angriff nehme. Und wenn ich damit fertig bin, dann stell ich es hier rein. Okay!?


Auf dem Service-Dienstplan komme ich später noch mal drauf zurück. Das er eine Excel-Datei ist, spielt keine rolle.

Spacecop hat geschrieben: Ich hoffe ich bin Dir jetzt nicht auf den Schlips getreten, wo Du Dir doch schon sooooooooooooooo viel Mühe gegeben hast. :roll:
I wo! Du hast, und bist mir in keinster Weise auf den Schlips getreten. Mach dir da mal gar keine Gedanken drum. :D
Wir werden uns schon, über kurz oder lang, handelseinig werden. Auch wenn es etwas dauert. :wink:


Bis nachher.


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
Benutzeravatar
balu
********
Beiträge: 3812
Registriert: Fr, 24.08.2007 00:28
Wohnort: Warstein

Re: Daten aus externer Tabelle übernehmen

Beitrag von balu »

Hallo Tom,

habe den Mund zu voll genommen. :oops:

Hatte eine Funktion genommen (=DDE), mit der es mir möglich war, Daten aus einer anderen Datei einzulesen. Das klappt ja auch wunderbar, nur habe ich dabei eine Sache ganz und gar vergessen. Nämlich die: Wenn man in ein Blatt in der 1. Datei neue Daten eingibt, dann werden die in der 2. Datei zuvor schon übernommenen wieder überschrieben (gelöscht). Das geschieht wohl nur bei Datei-Aktualisieren, wie z.B. beim öffen, oder bei "Neuberechnung", aber sie sind dann halt einfach wech, die Daten.

Das geht also nur mit Makro, aber da bin ich jetzt überfragt, weil das nicht meine Welt ist :? . Da musst Du dich an die lieben Leute :D aus unserem "OOo Basic und Java"-Forum wenden.

Gruß
balu






p.s: könnt mich aber auch in den Hintern treten, dass ich nicht ehern daran gedacht hatte.
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
Spacecop
***
Beiträge: 69
Registriert: So, 10.08.2008 21:09
Wohnort: Auetal
Kontaktdaten:

Re: Daten aus externer Tabelle übernehmen

Beitrag von Spacecop »

:D

Hallo Balu,

inzwischen hab ich mich ein bißchen in die neuen Dateien "eingearbeitet". Ist doch nicht so schlecht... ich komm langsam hinter die Logik!

Zum Thema "nette Leute" aus dem Makro Forum....:

Ich hatte da bereits mal gepostet. Zwar in Sachen Dienstplan, aber wegen der Zuweisung der Namen zu den DA'en. Keine Antwort. Scheint zu schwer sein. Weiß ich nicht.

Ich scheue mich davor nochmal zu posten und dann wieder keine Antwort darauf zu bekommen.

Wenn wenigstens einer was geschrieben hätte... so nach dem Motto, schick mal ne Datei oder etwas genauer bitte... etc.
Aber es kam gar nix.

Naja, mal sehen was der Nachtdienst heute bringt....

Bis später
Gruß
Tom
Spacecop
***
Beiträge: 69
Registriert: So, 10.08.2008 21:09
Wohnort: Auetal
Kontaktdaten:

Re: Daten aus externer Tabelle übernehmen

Beitrag von Spacecop »

Hallo Balu,

nach ein bißchen Recherche im Internet ging es auch ohne das Forum.

Ich hab nun ein Makro geschrieben, bei dem zuerst eine MessegeBox öffnet, in der nach dem Speichern gefragt wird (Ja/Nein/Abbrechen).
Allerdings wird die Datei gespeichert, egal was man anklickt, also bei Ja, Nein und Abbrechen. Ist ja nicht der Sinn der Sache, aber immerhin bin ich soweit schon gekommen.
Kann also kein großes Problem mehr sein.

Inzwischen weiß ich dann auch, wie ich dann später das Makro einer Schaltfläche in unserer Dienstplandatei zuweisen kann.

Zumindest hierfür war der Nachtdienst gut :lol:

Wenn Du dann eine neue Variante der Datei einstellst, bau ich dann das dann hoffentlich funktionierende Makro ein.

Gruß,
Tom
Benutzeravatar
balu
********
Beiträge: 3812
Registriert: Fr, 24.08.2007 00:28
Wohnort: Warstein

Re: Daten aus externer Tabelle übernehmen

Beitrag von balu »

Hallo Tom,

ja ja! Die Nachtschichtler :wink: :D

Das mit dem anderen Forums-Thread tut mit leid. Ich glaube aber auch, dass es sehr schwer zu programmieren ist. Aber angst zu haben, noch mal zu posten und keine antwort zu bekommen, dass brauchst Du nicht. Manchmal dauert es länger, bis eine antwort kommt. Je nachdem was die einzelnen Mitglieder sonst noch so zu tun haben, kann es schon mal zu so was kommen. :wink:

Du hast ein Makro programmiert :shock: ? Is ja dolle :D . Was soll es denn machen!? Das habe ich bis jetzt noch nicht verstanden. :roll: Kannst Du es anhängen!?
Das Makro was wir brauchen, sollte folgendes können.
-> Datum der "Eingabe-Datei" (Old-layout) überprüfen.
-> Das dazugehörige Datum in der "Admin-Datei" suchen, und wenn es schon mit Text gefüllt ist, eventuell aktualisieren.
-> Wenn Datum vorhanden, aber leer ist, dann die Daten aus der "Eingabe-Datei" eintragen.

Ich werde dies, als anfrage mit einer Beispeldatei, in das Makro-Forum posten. Mal schaun was dabei rauskommt.


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
Spacecop
***
Beiträge: 69
Registriert: So, 10.08.2008 21:09
Wohnort: Auetal
Kontaktdaten:

Re: Daten aus externer Tabelle übernehmen

Beitrag von Spacecop »

Hallo Balu,

hier mal der Code von meinem Makro:

Code: Alles auswählen

Sub Speicherabfrage
Dim sVar as Integer
Dim oDoc As Object
Dim aFileProp(1) as New com.sun.star.beans.PropertyValue
Dim sDatei As String
sVar = MsgBox( "Wollen Sie speichern?",128 + 32 + 3,"Info")

	oDoc = ThisComponent
	sDatei = "file:////home/schthm69/Desktop/SCHICHTPLAN_TESTneu.ods"
	aFileProp(0).Name = "Unpacked"
	aFileProp(0).Value = True
	aFileProp(1).Name = "Overwrite"
	aFileProp(1).Value = True
	oDoc.storeAsURL(sDatei, aFileProp()

If sVar = 1 Then sDatei
If sVar = 7 Then 
	MsgBox "Dann nicht!", 128 + 64 + 1,"Info"
If sVar = 2 Then End
End If
End Sub
Wie gesagt, leider wird nicht nur beim Klick auf Ja gespeichert, sondern auch bei Klick auf Nein und Abrechen.
Warum das so ist, keine Ahnung.

Jedenfalls wird durch das Makro die aktuelle Datei unter dem Namen "SCHICHTPLAN_TESTneu.ods" gespeichert. Dieser Dateinamen ist natürlich individuelle zu gestalten.
Ich versuch das mal mit Deinen beiden Dateien aus dem "Basic und Java"-Forum.
Vom Grundsatz her ist das, meiner Meinung nach nicht schwer, das benötigte Makro zu erstellen, wenn man die Befehle und Funktionen kennt (ist das nicht überall so? :D )

Gruß
Tom
Benutzeravatar
balu
********
Beiträge: 3812
Registriert: Fr, 24.08.2007 00:28
Wohnort: Warstein

Re: Daten aus externer Tabelle übernehmen

Beitrag von balu »

Hallo Tom,

isch nixe verstähn :roll:, ich von die andere Welt.

Weiss noch nicht wo bei mir der Fehler liegt. Aber wenn ich das Makro einsetze, starte und z.B. in der Message-Box auf "Nein" klicke, dann bekomme ich eine Fehlermeldung. Hier der Screenshot dazu
fehler.png
fehler.png (25.42 KiB) 1233 mal betrachtet
Mal schaun, vielleicht finde ich noch den Fehler. Bin da halt noch in dieser hinsicht so wie mein T-Shirt, (Blutrot) anfänger.

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
Spacecop
***
Beiträge: 69
Registriert: So, 10.08.2008 21:09
Wohnort: Auetal
Kontaktdaten:

Re: Daten aus externer Tabelle übernehmen

Beitrag von Spacecop »

Hallo Balu,

hast Du das Makro mal aus der Datei heraus gestartet?
Extras-Makros-Makro ausführen-dann das entsprechende Makro auswählen-ausführen

bei mir geht es....

Inzwischen kann ich über ein Makro 2 Zellen vergleichen. Allerdings nur in einem Sheet. Hier der Code:

Code: Alles auswählen

sub vergleich
   oDoc=thisComponent
   oSheet=oDoc.sheets.getByName("31_08")
   iWert1=oSheet.getCellRangeByName("K3").value
   iWert2=oSheet.getCellRangeByName("G39").value
   if iWert1=iWert2 then
          msgbox "A1 und A2 sind gleich"
   else
         msgbox "A1 und A2 sind ungleich"
    end if
end sub
Ich bin noch nicht dahinter gekommen, wie ich 2 Zellen in unterschiedlichen Tabellen vergleichen kann.
Ich werde das Problem jetzt mal im richtigen Forum posten.

Gruß
Tom
Antworten