Tabellenblatt verstecken

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

Moderator: Moderatoren

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

Re: Tabellenblatt verstecken

Beitrag von Stephan »

Gibt es eine Möglichkeit einzelne Tabellenblätter so zu verstecken, dass sie nur über ein makro wieder eingeblendet werden können?
Nein, denn auch der 'Schutz' der 'Ausblendung' durch Schutz der Tabellenstruktur ist meines Wissens nicht durch ein Makro zu umgehen, sondern muß vorher (egal ob Passwort gesetzt ist oder nicht) explizit aufgehoben werden, egal ob manuell oder per Makro, was das "nur" ausschließt.



Gruß
Stephan
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Tabellenblatt verstecken

Beitrag von komma4 »

Bon hat geschrieben:Etwas ähnliches muss es doch auch in Open Office Basic geben?
Nö - muss es nicht.

Die Eigenschaft isVisible() ist bei OOo vom Typ boolean - also zwei Zustände (ja/nein), und nicht drei (ja, nein, ganz_unsichtbar)
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
mumpel
****
Beiträge: 133
Registriert: So, 22.08.2004 05:27
Wohnort: Lindau (B)
Kontaktdaten:

Re: Tabellenblatt verstecken

Beitrag von mumpel »

Hallo!

Es genügt doch ein Arbeitsmappenschutz. Dann kann man auch nichts mehr einblenden.

Für Excel gilt:
Das Ausblenden/Verstecken der Tabelle ohne Arbeitsmappenschutz macht IMHO keinen Sinn. Denn jeder, der VBA beherrscht, kann dann das Blatt einblenden. Dazu muss man noch nicht einmal das VBA-Paßwort kennen. Man muss nur mit einem "externen" Makro und mit ActiveWorkbook.Sheets das Blatt einblenden. Und das Herausfinden der Tabellennamen ist in Excel nun wirklich kein großes Problem.

Gruß, René

Windows 7 Home Premium (auf Acer Desktop PC)
Windows 8 Professional (auf Microsoft Surface Pro 3).
MSO 365 Home Premium
LibreOffice 4.2.
F-Secure Internet Security
Stephan
********
Beiträge: 12368
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: Tabellenblatt verstecken

Beitrag von Stephan »

Es genügt doch ein Arbeitsmappenschutz. Dann kann man auch nichts mehr einblenden.
Nein. Dazu hatte ich bereits in meinem ersten potst festgestellt das das die "nur"-Bedingung des Fragers nicht erfüllt, da der Schutz jederzeit auch durch manuelle Passworteingabe, und nicht wie gewünscht nur durchj Makro aufgehoben werden kann.
Sorry, nur ich kann nur berantworten wonach gefragt wird und nicht mutmaßen und die Alternative mit dem Arbeitsmappenschutz (nennt sich in Calc Dokumentschutz und schützt nur die Tabellenstruktur) hatte ich ja zur Sicherheit sogar noch in meine Antwort eingeflochten damit der ursprüngliche Frager darauf aufmerksam wird.
Für Excel gilt:
Das Ausblenden/Verstecken der Tabelle ohne Arbeitsmappenschutz macht IMHO keinen Sinn. Denn jeder, der VBA beherrscht, kann dann das Blatt einblenden. [...]
Gleiches gilt für Calc bzw. ich sehe das genauso, nur war eben nach nichts Anderem gefragt und der Frager reagierte auch nicht auf meinen Hinweis.



Gruß
Stephan
mumpel
****
Beiträge: 133
Registriert: So, 22.08.2004 05:27
Wohnort: Lindau (B)
Kontaktdaten:

Re: Tabellenblatt verstecken

Beitrag von mumpel »

Ach so war die Frage gemeint (?). So etwas gibt es leider nicht. Aber vielleicht lässt sich der Menüpunkt Schutz per Makro deaktivieren (geht doch in Excel auch). Ist zumindest eine Möglichkeit. Oder gleich das ganze Optionsmenü für die Datei ausblenden. Hilft zumindest bei 95% der Anwender. Profis und Kenner kommen natürlich auch da wieder hin.

Windows 7 Home Premium (auf Acer Desktop PC)
Windows 8 Professional (auf Microsoft Surface Pro 3).
MSO 365 Home Premium
LibreOffice 4.2.
F-Secure Internet Security
eBayer
******
Beiträge: 556
Registriert: Do, 04.12.2008 14:33
Wohnort: Augsburg

Re: Tabellenblatt verstecken

Beitrag von eBayer »

Hallo,
einfach mal eine naive Frage....
Warum muß es unbedingt Calc sein?
Ich denke, mit einem vernünftigen Konzept sollte man das möglicherweise in Base besser erledigen können.
Bedeutet natürlich, daß man etwas vermutlich gewachsenes mal in geordnete Formen übertragen muß.
....... und wenn es nur zum Denken angeregt hat - das war es dann schon wert.
Grüße
eBayer
Intel(R) Core(TM)2 Quad CPU Q8200 @ 2.33GHz mit 4 GB Memory (3,2 GB aktiv)
Vista Home Premium 32 Bit
openOffice 3.1.1 mit Sun Report Builder 1.1.0 und MySql 5.1
Hauptinteresse ooBase seit 12.2008
Stephan
********
Beiträge: 12368
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: Tabellenblatt verstecken

Beitrag von Stephan »

In der Datei befinden sich mehrere Tabellenblätter.Auf einem davon werden einige Werte festgelegt die für die Berechnungen auf den anderen Tabellenblättern wichtig sind. Diese Werte soll aber nun nicht jeder ändern können, geschweige denn einsehen können. Daher muss dieses Tabellenblatt also mit einem Passwort geschützt werden. Ich hoffe jetzt ist mein Problem verständlicher geworden.
Dir ist schon klar das das hier ein ganz anderes Szenario beschreibt als Deine ursprüngliche Frage, i.d.S. also nichts klarer geworden sein kann sondern Du nun eine ganz andere Lösung willst?

Ich würde hierfür beispielsweise die Spalten des Tabellenblattes die Inhalte enthalten die nicht gelesen werden dürfen ausblenden:
http://www.dannenhoefer.de/faqstarbasic ... nden..html

und anschließend das Blatt schützen:

Code: Alles auswählen

ThisComponent.Sheets(0).protect("passwort")
'Schutz entfernen:
'ThisComponent.Sheets(0).unprotect("passwort")
Das erfüllt die jetzt genannten Anforderungen.



Gruß
Stephan
keksi1970
*****
Beiträge: 464
Registriert: So, 27.01.2008 11:47
Wohnort: DU

Re: Tabellenblatt verstecken

Beitrag von keksi1970 »

kleiner tipp :

füge ein makro dem ereignis Programmstart zu, installiere das makro aber seperat unter meine Makros bei befugten benutzern (vor allem das einblenden)

so steht das PW nur bei den Usern, die es eh wissen/benutzen dürfen ;)

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

Re: Tabellenblatt verstecken

Beitrag von Stephan »

Ich wollte aber eigentlich fragen wie ich den Basic-Code mit einem Passwort schützen kann?
Dann solltest Du das in einem anderen Thred tun, den es ist ein völlig anderes Thema.

In Wahrheit ist es natürlich nur nötig das Forum zu durchsuchen denn wie man Code durch passwort schützt wurde hier längst beantwortet.



Gruß
Stephan
Antworten