Tabellenkopf fixieren

Das Tabellenkalkulationsprogramm

Moderator: Moderatoren

Benutzeravatar
teakay
***
Beiträge: 82
Registriert: Mi, 28.09.2005 08:47
Wohnort: Somewhere over the Rainbow.

Tabellenkopf fixieren

Beitrag von teakay »

Ich hoffe ich kann euch klar machen was ich will.

Also, zu allererst meine Versionen: WinXP, OO 1.9.130(deutsch).

Ich habe eine Tabelle erstellt und selber einen tabellenkopf erstellt, mit Name, Firma, telefonnummer usw...
Dieser Kopf umfasst den Bereich A1-->J11. Jetzt möchte ich das dieser Kopf immer an dieser Stelle bleibt (sichtbar bleibt), wenn ich herunter scrolle. Ich habe das schon in einigen Tabellen gesehen. Ich konnte aber nicht herausfinden, wie das gemacht wurde.

Ich hoffe ihr wißt die Lösung dafür.

Ein kleines Problem habe ich allerdings noch.
Im "Writer" gibt es die Funktion in dem Bereich Feldbefehl, womit man das Erstellungsdatum im Dokument anzeigen lassen kann. Gibt es eine solche Funktion auch für "Calc".
Lenu
*******
Beiträge: 1085
Registriert: Sa, 30.10.2004 09:24

Beitrag von Lenu »

Die Funktion, die Du suchst, befindet sich im Menu "Fenster" und heisst "fixieren".
Feldbefehle wie im writer gibt es in sCalc nicht.
Schöne Grüsse
Toxitom
********
Beiträge: 3769
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Beitrag von Toxitom »

Hey teakay,
Im "Writer" gibt es die Funktion in dem Bereich Feldbefehl, womit man das Erstellungsdatum im Dokument anzeigen lassen kann. Gibt es eine solche Funktion auch für "Calc".
Nein. Du kannst dir aber schnell eine selbst-definierte Funktion schreiben: Ein Makro, dass du am Ort "Meine Makros - Standard" speicherst:

Code: Alles auswählen

Function Erstelldatum()
	vDat = thisComponent.getDocumentInfo().CreationDate
	Erstelldatum = DateSerial(vDat.Year, vDat.Month, vDat.Day)
end function
Speichern. Ferig.
Jetzt kannst du in eine Zelle die die Funktion eingeben: =Erstelldatum() -> und als Ergebnis erscheint das Datum, wann das Dokument erstellt wurde.

Gruss
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Benutzeravatar
teakay
***
Beiträge: 82
Registriert: Mi, 28.09.2005 08:47
Wohnort: Somewhere over the Rainbow.

Beitrag von teakay »

Danke für eure Tipps. Hat alles super Funktioniert.

Eine Frage habe ich aber noch.

Wie kann ich das Datum noch Formatieren?
Ich hätte gerne das das Datum so ausgegeben wird.

11. Oktober 2005

Bei der Funktion die oben von Toxitom angegeben wurde, wird das Datum leider nur so dargestellt.

11.10.2005

Über die Zelleformatierung geht es leider nicht.
Lenu
*******
Beiträge: 1085
Registriert: Sa, 30.10.2004 09:24

Beitrag von Lenu »

Hallo Thomas
Toxitom hat geschrieben:getDocumentInfo().CreationDate
Darf ich Dich fragen, wo man diese Definitionen findet? Ich grüble hier im Developpers Guide, aber entweder die Dokument-Info's werden hier nicht gelistet oder ich bin zu blöd, sie zu finden. Auch die Format-Angabe "DateSerial" würde mich näher interessieren.
Schöne Grüsse
Benutzeravatar
teakay
***
Beiträge: 82
Registriert: Mi, 28.09.2005 08:47
Wohnort: Somewhere over the Rainbow.

Beitrag von teakay »

Du hast mich ganz schön erschreckt, denn zufälligerweise heiße ich auch Thomas. Ich habe mich schon gefragt warum du mich so etwas Fragst aber dann habe ich gesehen das Toxitom auch Thomas heißt.

Mich würde mal interessieren was das Developpers Guide ist. Ich habe noch nie etwas davon gehört.
Stephan
********
Beiträge: 12368
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Beitrag von Stephan »

Den Typ mit angeben:

Code: Alles auswählen

Function Erstelldatum() As Long
   vDat = thisComponent.getDocumentInfo().CreationDate 
   Erstelldatum = DateSerial(vDat.Year, vDat.Month, vDat.Day) 
end function
die Zelle anschließend mit dem Format-Code formatieren:

T. MMMM JJJJ


@Lenu
Ich grüble hier im Developpers Guide, aber entweder die Dokument-Info's werden hier nicht gelistet oder ich bin zu blöd, sie zu finden.
Ich weiß nicht ob die da stehen, systematisch nicht, wenn die drin stehen wären das Beispiele.
Systematisch steht das in der API-Referenz; online hier:
http://api.openoffice.org/docs/common/r ... tInfo.html
ist aber auch offline im SDK drin.

Außerdem geht immer

Code: Alles auswählen

.dbg_properties
.dbg_methods
.dbg_supportedInterfaces
das gibt für

Code: Alles auswählen

msgbox thisComponent.getDocumentInfo().dbg_properties
das hier:
Properties of object "Unknown":
SbxSTRING Author; SbxBOOL AutoloadEnabled;
SbxINTEGER AutoloadSecs; SbxSTRING AutoloadURL;
SbxSTRING BlindCopiesTo; SbxSTRING CopyTo;
SbxOBJECT/void CreationDate; SbxSTRING DefaultTarget;
SbxSTRING Description; SbxINTEGER EditingCycles;
SbxLONG EditingDuration; SbxSTRING InReplyTo;
SbxBOOL IsEncrypted; SbxSTRING Keywords;
SbxSTRING MIMEType; SbxSTRING ModifiedBy;
SbxOBJECT/void ModifyDate; SbxSTRING Newsgroups;
SbxSTRING Original; SbxOBJECT/void PrintDate;
SbxSTRING PrintedBy; SbxINTEGER Priority;
SbxSTRING Recipient; SbxSTRING References;
SbxSTRING ReplyTo; SbxBOOL SaveVersionOnClose;
SbxSTRING Template; SbxSTRING TemplateFileName;
SbxOBJECT/void TemplateDate; SbxSTRING Theme;
SbxSTRING Title; SbxARRAY Types;
SbxARRAY ImplementationId; SbxINTEGER UserFieldCount;
SbxOBJECT PropertySetInfo; SbxARRAY PropertyValues;
SbxSTRING Dbg_SupportedInterfaces; SbxSTRING Dbg_Properties;
SbxSTRING Dbg_Methods
Auch die Format-Angabe "DateSerial" würde mich näher interessieren.


Nein, das ist eine normale Basic-Funktion zu finden in der Online-Hilfe unter:

Makros und Programmierung - Befehle



Gruß
Stephan
Stephan
********
Beiträge: 12368
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Beitrag von Stephan »

Mich würde mal interessieren was das Developpers Guide ist. Ich habe noch nie etwas davon gehört.
http://api.openoffice.org/DevelopersGui ... Guide.html


Gruß
Stephan
Benutzeravatar
teakay
***
Beiträge: 82
Registriert: Mi, 28.09.2005 08:47
Wohnort: Somewhere over the Rainbow.

Beitrag von teakay »

Wie ich oben schon geschrieben habe funzt das nicht über die Zellformatierung. Esbleibt einfach so wie es ist. Kann man da nicht etwas in dem Macro ändern damit es anders dargestellt wird.
Lenu
*******
Beiträge: 1085
Registriert: Sa, 30.10.2004 09:24

Beitrag von Lenu »

teakay hat geschrieben:Wie ich oben schon geschrieben habe funzt das nicht über die Zellformatierung. Es bleibt einfach so wie es ist. Kann man da nicht etwas in dem Macro ändern damit es anders dargestellt wird.
Hast Du den Hinweis "Typ mit angeben" gelesen und "As Long" mit in die function aufgenommen? Ohne das ist das Ergebnis kein Zahlenwert und kann somit auch nichts mit einem Datumsformat anfangen.
Gruss
Lenu
*******
Beiträge: 1085
Registriert: Sa, 30.10.2004 09:24

Beitrag von Lenu »

Stephan hat geschrieben:

Code: Alles auswählen

msgbox thisComponent.getDocumentInfo().dbg_properties
Dank Dir, da habe ich nun erstmal was zu tun,
schöne Grüsse
Benutzeravatar
teakay
***
Beiträge: 82
Registriert: Mi, 28.09.2005 08:47
Wohnort: Somewhere over the Rainbow.

Beitrag von teakay »

Alles klar jetzt hatts funktioniert.

Nochmal Danke an alle die geholfen haben.
Stephan
********
Beiträge: 12368
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Beitrag von Stephan »

Hallo Lenu,
Dank Dir, da habe ich nun erstmal was zu tun,
mir war jetzt nicht bewußt das Du damit arbeiten willst (dachte nur Du willst eine Auskunft).
Lade Dir mal:
http://kienlein.com/oo/DevGuide.zip

Mußt Du dann über die Makro-Bibliotheksverwaltung installiere (Du weist wie?)
Damit kannst Du Dir das alles bequem mit einer'klickbaren' Oberfläche anzeigen lassen.


Gruß
Stephan
Toxitom
********
Beiträge: 3769
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Beitrag von Toxitom »

Hey Lenu,

auch wenn es schon langsam untergeht: Das meiste, was ich hier zitiere, stammt aus meinem Buch <Werbung an>"Makros für OpenOffice.org 2.0", das zwar seit April fertig aber immer noch nicht veröffentlicht ist :cry: Kann ich nur empfehlen</Werbung aus>
Ansonsten hat Stefan dir die wesentlichen Quellen genannt. Mehr kann man leider nicht dazu sagen - suchen, suchen, suchen. Und dann experimentieren.

Viele Grüße
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Lenu
*******
Beiträge: 1085
Registriert: Sa, 30.10.2004 09:24

Beitrag von Lenu »

Hallo Stephan
Stephan hat geschrieben: Lade Dir mal:
http://kienlein.com/oo/DevGuide.zip
Die Makro-Bibliothek habe ich installiert und nach einer Weile auch herausgefunden, wie MainInspect funktioniert. Und das SDK habe ich auch installiert. Wie sehr ich mich aber darauf einlasse, das muss sich noch weisen, ist doch ziemlich "dicke Post" und ich habe mit Programmierung nur ganz, ganz am Rande zu tun. Im Moment ging es mir darum, herauszufinden, auf welche Dokumenteigenschaften man auf relativ einfache Art Zugriff hat, das habe ich dank Deinen Infos nun herausgefunden. Daraus habe ich folgende Funktionen erstellt:

Code: Alles auswählen

Function InfoDokDatumErstellung() As Long
   iDatE = thisComponent.getDocumentInfo().CreationDate
   InfoDokDatumErstellung = DateSerial(iDatE.Year, iDatE.Month, iDatE.Day)
end function

Function InfoDokDatumAenderung() As Long
   iDatA = thisComponent.getDocumentInfo().ModifyDate
   InfoDokDatumAenderung = DateSerial(iDatA.Year, iDatA.Month, iDatA.Day)
end function

Function InfoDokTitel()
   iTitel = thisComponent.getDocumentInfo().Title
   InfoDokTitel = iTitel
end function

Function InfoDokErstellerMod()
   iErstellerMod = thisComponent.getDocumentInfo().ModifiedBy
   InfoDokErstellerMod = iErstellerMod
end function

Function InfoDokThema()
   iThema = thisComponent.getDocumentInfo().Theme
   InfoDokthema = iThema
end function

Function InfoDokKey()
   iSchluessel = thisComponent.getDocumentInfo().Keywords
   InfoDokKey = iSchluessel
end function
Das ging auch soweit ganz gut (ausser mit "Author", damit habe ich's auch probiert, das bleibt aber leer. Sieht aber auch unter Datei/Eigenschaften/Allgemein so aus, als ob da nichts drin stünde).

Wenn man das Dokument neu öffnet, kommt ein Laufzeitfehler für die Funktion "Aenderungsdatum", offenbar ist diese Info beim Laden nicht vorhanden und alle anderen Funktionen (ausser dem Erstellungsdatum, das klappt immer) liefern BLANK. Wenn man dann anklickt "Datei/neu laden" wird wieder alles richtig ausgefüllt.

Was mich auch noch interessieren würde, wozu ich aber bisher nichts gefunden habe: hat man auch Zugriff auf Erstellungs- und Änderungszeit? DateSerial liefert offenbar 00:00:00

Schöne Grüsse
Antworten