Seite 1 von 2
Tabellenblatt schützen (nicht einsehbar machen)
Verfasst: Fr, 07.02.2014 17:18
von Ulti
Hallo ihr lieben,
Ich habe 4 Tabellenblätter mit optionsfeldern.
Ich habe sie bereits so geschützt, dass man nur die optionsfelder anwählen kann, sowie für alle Änderungen ein PW benötigt.
Nun wollt ich fragen ob es möglich ist dass nur bestimmte Personen bestimmte Tabellenblätter überhaupt sehen können,
Also Person 1 darf nur Tabellenblatt 1 einsehen, Person 2 nur Tabellenblatt 2 und Person 3 darf alle einsehen.
Gruß
Ulti
Re: Tabellenblatt schützen (nicht einsehbar machen)
Verfasst: Fr, 07.02.2014 18:48
von lorbass
Ulti hat geschrieben:Nun wollt ich fragen ob es möglich ist dass nur bestimmte Personen bestimmte Tabellenblätter überhaupt sehen können,
Also Person 1 darf nur Tabellenblatt 1 einsehen, Person 2 nur Tabellenblatt 2 und Person 3 darf alle einsehen.
Nein.
Gruß
lorbass
Re: Tabellenblatt schützen (nicht einsehbar machen)
Verfasst: Fr, 07.02.2014 19:41
von Ulti
Oh gott, jetzt bin ich mit meiner Tabelle fertig, alle berechnungne stimmen und jetzt kann es doch nicht daran scheitern...

kennt denn jemand einen anderen weg, eine Idee?
Re: Tabellenblatt schützen (nicht einsehbar machen)
Verfasst: Fr, 07.02.2014 19:44
von F3K Total
Hallo,
ja das geht, per Makro in einer eigens dafür angelegten Makro Bibliothek.
Dies ist notwendig, damit die Makros verschlüsselt werden können, geht mit der Bibliothek "Standard" nicht.
Dann kannst Du im Makro Passworte und die Blätter, die jeweils gesehen werden dürfen, angeben.
Anbei eine Beispieldatei mit der extra Makro Bibliothek "Permissions".
Drei mögliche Passworte beim Öffnen:
- AAAA -> darf Tabelle1 sehen
- BBBB -> darf Tabelle2 und Tabelle3 sehen
- CCCC -> darf Tabelle1,Tabelle2 und Tabelle3 sehen
Das Makro nimmt den Passwortschutz vom Dokument, blendet dann die zugelassenen Blätter ein, setzt den Passwortschutz wieder und speichert das Dokument.
Ein zweites Makro blendet die Tabellenblätter beim Schliessen wieder aus und speichert die Datei, da aber mindestens ein Blatt sichtbar sein muss, habe ich eine Blatt "Leer" zugefügt.
Das Makro darf nur der sehen, der das Passwort der Bibliothek kennt, ich verrate es dir: 1111
So nun viel Erfolg beim Nachbauen.
Gruß R
Re: Tabellenblatt schützen (nicht einsehbar machen)
Verfasst: Fr, 07.02.2014 22:52
von Ulti
Danke für deine Mühen,
aber leider klappt das PW: 1111 für die Bib. nicht =(
Re: Tabellenblatt schützen (nicht einsehbar machen)
Verfasst: Fr, 07.02.2014 23:09
von F3K Total
???
Ulti hat geschrieben:aber leider klappt das PW: 1111 für die Bib. nicht =(
habe, um sicher zu gehen, die Datei gerade noch einmal heruntergeladen.
Natürlich läßt sich die Bibliothek "Permissions" mit dem Passwort 1111 entschlüsseln.
Dazu unter Extras/Makros/Makros verwalten/OpenOffice Basic unten links
- erst auf das Plus-Zeichen vor Login.ods
- und dann auf das Plus-Zeichen vor Permissions klicken und das Passwort eingeben.
- Dann Module1 anklicken, rechts S_Login markieren, und auf Bearbeiten -> dann siehst du die beiden Makros.
EDIT: Unter LO 4.1.4 klappt es mit dieser Datei tatsächlich nicht, wieso auch immer.
Die Datei wurde mit AOO 4.0.1 erstellt, damit läßt sie sich entschlüsseln.
Gruß R
Re: Tabellenblatt schützen (nicht einsehbar machen)
Verfasst: Fr, 07.02.2014 23:39
von Karolus
Hallo
Das Passwort für die Makrobibliothek geht hier auch nicht.
weder mit LO4.2 noch mit Aoo4
Karolus
Re: Tabellenblatt schützen (nicht einsehbar machen)
Verfasst: Fr, 07.02.2014 23:44
von F3K Total
Hi,
bin schon am forschen, es scheint so zu sein, dass sich die Datei, wenn ein Versuch mit LO gemacht wurde, auch in AOO nicht mehr entschlüsseln läßt.
Kannst Du bitte einmal versuchen die jungfräuliche Datei mit AOO zu entschlüsseln?
EDIT 1
Alles durcheinander.
Meine Erkentnisse:
- Versucht man unter LO die Bibliothek zu entschlüsseln, wenn man die Ausführung von Makros zugelassen hat, dann zerschießt die Datei, Makros funktionieren zwar noch, lassen sich aber nie mehr entschlüsseln, nicht mit AOO noch mit LO
- Entschlüsselt man die Bibliothek unter LO, wenn die Ausführung von Makros nicht möglich ist, funktioniert es, man kann das Passwort auch wegnehmen oder ändern, die Datei läßt sich danach auch mit AOO wieder entschlüsseln.
- Unter AOO läßt sich die Datei immer ver- und entschlüsseln, wenn sie nie mit LO in Kontakt kam.
Also, in LO nie versuchen zu entschlüsseln, wenn Makros laufen dürfen
Versucht es bitte so noch einmal mit einer frisch heruntergeladenen Datei, entweder in AOO oder in LO ohne Makroausführung.
EDIT2: Habe noch weiter gesucht. Das Problem unter LO hängt mit meinem Login-Makro, das beim Öffnen automatisch ausgeführt wird, zusammen.
Versucht man die Bibliothek zu entschlüsseln, nachdem das Makro ausgeführt wurde, kommt es zu o.a. Zerschiessen der Datei.
Wurde das Makro, nach Öffnen der Datei nicht ausgeführt, läßt sich die Bibliothek entschlüsseln. Scheint damit zusammenzuhängen, dass das Makro den Dokumentenschutz entfernt und wieder setzt. Eine Lösung, ausser o.a. Weg, konnte ich nicht finden.
Gruß R
Re: Tabellenblatt schützen (nicht einsehbar machen)
Verfasst: Sa, 08.02.2014 00:46
von Karolus
Hallo
Ja -direkt mit Aoo gehts dann.
Karolus
Re: Tabellenblatt schützen (nicht einsehbar machen)
Verfasst: Sa, 08.02.2014 01:26
von Ulti
stimmt nur bei einer "jungfräulichen" Datei die mit AOO geöffnet wird funktioniert das PW 1111.
Ich als Makro-Noob werd mal probieren die Makros bei Libre office einzubringen....
Re: Tabellenblatt schützen (nicht einsehbar machen)
Verfasst: Sa, 08.02.2014 10:00
von Stephan
Bitte macht das Makro zumindestens der Form halber sicher, denn derzeitig kann jeder der ein falsches Passwort eingibt und die Nachfrage ob er die Passworteingabe wiederholen will verneint, anschließend alle Tabellen über das Menü einblenden, weil dass Makro bei der Verneinung der erneuten Passworteingabe nicht den Dateischutz wieder setzt wenn folgede Schleife verlassen wird:
Code: Alles auswählen
if msgbox ("Passwort unbekannt",21,"Fehler") = 4 then
goto 100
endif
Außerdem möchte ich darauf hinweisen das der Schutz von Tabellen oder Zellen, der auf diese WEise erfogt, kein wirksamer Schutz ist sondern jederzeit gebrochen werden kann wenn man die geschützte Datei als xls speichert. Am Einfachsten indem man eine ältere OOo-Version benutzt, und dort die xls öffnet, den dannn läßt sich de Tabellenschutz deaktivieren ohne Paswsworteingabe.
Gruß
Stephan
Re: Tabellenblatt schützen (nicht einsehbar machen)
Verfasst: Sa, 08.02.2014 10:18
von F3K Total
Hallo Stefan,
ja da hast Du recht, hier in meiner Version hatte ich die Zeile
die vor der Passwortüberprüfung stand, schon gelöscht und hinter die Überprüfung gesetzt.
So sollte es funktionieren, da die Datei ja "geschützt" geöffnet wird:
Code: Alles auswählen
Sub S_Login
100:
r1 = Array("AAAA","Tabelle1")'Passwort, gefolgt von Tabellenblättern die gesehen werden dürfen
r2 = Array("BBBB","Tabelle2","Tabelle3")
r3 = Array("CCCC","Tabelle1","Tabelle2","Tabelle3")
A = Array (r1,r2,r3)
DialogLibraries.loadLibrary("Permissions")
odlgLogin = CreateUnoDialog(DialogLibraries.Permissions.dlgLogin)
odlgLogin.execute
otxtpassword = odlglogin.getcontrol("txtpassword")
sCurrentPassword = otxtpassword.text
bfound = false
for i = 0 to uBound(A)
PW = A(i)
if sCurrentPassword = PW(0)then
bfound = true
thiscomponent.unprotect("1111")
for k = 1 to uBound(PW)
osheet = thiscomponent.sheets.getbyname(PW(k))
osheet.IsVisible = true
next k
osheet = thiscomponent.sheets.getbyname("Leer")
osheet.IsVisible = false
thiscomponent.protect("1111")
thiscomponent.store
endif
next i
if not bfound then
if msgbox ("Passwort unbekannt",21,"Fehler") = 4 then
goto 100
endif
endif
End Sub
Gruß R
Re: Tabellenblatt schützen (nicht einsehbar machen)
Verfasst: Sa, 08.02.2014 10:29
von Ulti
danke für die Hinweise Stephan,
aber ich wäre schon froh wenn ich überhaupt ansatzweiße eine Passwortabfrage wie F3kTotal hinkriegen würde, lese gerade ein "Makro Kochbuch" und versuch den Code in Libre office hinzukriegen....
darf ich fragen wofür "odlgLogin" steht? bzw. wofür steht odlg
bzw. es kommt der Fehler odlgLogin -> Objektvariable nicht vergeben
Re: Tabellenblatt schützen (nicht einsehbar machen)
Verfasst: Sa, 08.02.2014 10:34
von Ulti
wie schreibt man einen Text (Überschrift), in den dunkelgrauen Bereich des Abfragefensters?
habs nur hinekommen in die Schaltfläche was reinzuschreiben.

- Überschrift.JPG (63.9 KiB) 2739 mal betrachtet
Re: Tabellenblatt schützen (nicht einsehbar machen)
Verfasst: Sa, 08.02.2014 11:26
von F3K Total
Ulti hat geschrieben:wie schreibt man einen Text (Überschrift), in den dunkelgrauen Bereich des Abfragefensters?
Den Dialog ganz am Rand anklicken-> Rechte Maustaste -> Eigenschaften

- dlg.png (20.87 KiB) 2726 mal betrachtet
Gruß R