Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1416to1420
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Blatt schützen, aber mit VBA verändern
31.03.2015 08:40:21
Smithers
Guten Morgen,
ich habe ein kleines Problem.
Und zwar habe ich in VBA eine userform gebastelt, die Werte in ein Excel-Blatt einfügt.
Jetzt soll das Blatt ausschließlich über die userform geändert werden können, also eine Eingabe direkt auf dem Excel-Blatt soll nicht möglich sein.
Wie sieht denn der Befehl dafür aus und an welcher Stelle muss ich ihn einbauen ?
vielen Dank schon mal im Voraus.
Grüße
Samu

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
such mal nach: UserInterfaceOnly ...
31.03.2015 08:44:48
Matthias
Hallo
Oder Du müsstest beim Laden des UserForm (ActivateEreignis)
den Blattschutz entfernen und beim Entladen den Blattschutz wieder setzen.
Gruß Matthias

AW: such mal nach: UserInterfaceOnly ...
31.03.2015 08:52:01
Smithers
Okay, wie entferne ich den Blattschutz ?
Und sollte dieser Befehl dann in den Quelltext der userform rein oder in das Makro, dass sie aufruft ?
Ich werd in der zwischenzeit mal ein bisschen mit deinem Rat rumprobieren :)

AW: such mal nach: UserInterfaceOnly ...
31.03.2015 08:59:05
Nepumuk
Hallo,
in das Modul "DieseArbeitsmappe":
Option Explicit

Private Sub Workbook_Open()
    Tabelle1.Protect Password:="GEHEIM", UserInterfaceOnly:=True
End Sub

Tabellenname anpassen !!!
Gruß
Nepumuk

Anzeige
besser mit UserInterfaceOnly
31.03.2015 10:38:14
Erich
Hi,
den Blattschutz zu entfernen (und später wieder zu setzen) kannst und solltest du dir sparen. :-)
Einfacher ist es, den (vorhandenen) Blattschutz so einzurichten, dass User-Eingaben unmöglich,
Änderungen aus VBA heraus aber möglich sind. Dafür gibt es "UserInterfaceOnly".
Diese Eigenschaft des Tabellenblatts wird nicht mit der Excelmappe gespeichert,
wenn die Mappe gespeichert und geschlossen wird. Man muss
Sheets("Blattname").Protect Password:="StrengGEHEIM", UserInterfaceOnly:=True
nach dem Öffnen der Mappe einmal ausführen, damit Makros trotz des Schutzes ändern können.
Am einfachsten erledigt man das im "Workbook_Open()" - wie Nepumuk ja schon geschrieben hat.
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich

Anzeige
AW: besser mit UserInterfaceOnly
01.04.2015 07:17:08
Smithers
Beide Möglichkeiten funktionieren. Nur bei der Version mit UserInterfaceOnly schließt sich das Blatt, nachdem ich die Userform geschlossen habe, bzw sie sich durch einen Klick auf den "Übernehmen"-Button, wie ich ihn genannt habe, selbst schließt.
Deshalb habe ich den anderen Befehl probiert, bei welchem dieser Fehler nicht auftritt. Nur da die Userform sehr viele Eingabefelder hat muss ich ihn wohl in jeden Private Sub einbauen, oder ?
Denn wenn nicht erscheint die Fehlermeldung, dass das Blatt geschützt sei.
Jedoch vielen Dank für die schnelle und kompetente Hilfe.
Grüße
Samu

Anzeige
AW: besser mit UserInterfaceOnly
01.04.2015 08:32:51
Nepumuk
Hallo,
das liegt garantiert an irgendetwas anderem. Der Parameter UserInterfaceOnly weist Excel nur an Änderungen von Makros selbst auf geschützten Blättern zu akzeptieren und sonst nichts.
Gruß
Nepumuk

AW: besser mit UserInterfaceOnly
02.04.2015 07:30:25
Smithers
Hm...ich weiß nicht woran es liegt,aber ich habe das Problem jetzt einfach mit dem Workbook_Open Befehl gelöst. Ist vll nicht optimal, aber es funktioniert ^^

308 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige