online 1
gast (50)

/ Forum / Tabellenkalkulation

TabellenkalkulationTabellenkalkulation

Fragevon Kambarka vom 31.12.2019, 15:00 Options

VBA - Sperren

Hallo zusammen
Eine Frage
kann man wirkungsvoll die tastenkombi Alt+F11 mit einem makro sperren , so das ein zugriff auf VBA nicht möglich ist
allen einen guten Rutsch


Antwort schreiben

Antwort 1 von Hajo_Zi vom 31.12.2019, 15:08 Options

Hallo Nick,

falls Du den Zugriff auf Dein VBA Projekt verhindern willst schütze das VBA Projekt. In Excel ist aber nichts sicher.

Gruß Hajo

Antwort 2 von coros vom 31.12.2019, 17:22 Options

Hallo Kambarka,

nachfolgende Makros deaktivieren, bzw. aktivieren die Tastenkombination "Alt F11" und noch weitere Menüleisteneinträge, mit denen es möglich wäre, in die VBA-Umgebung zu wechseln.
Allerdings ist diese Variante, wie Hajo es bereits angedeutet hat, nicht 100%ig sicher. Denn wird die Datei ohne Makros zu aktivieren geöffnet , kann man in den VB-Editor wechseln. Um soetwas abzufangen, muss man mit anderen Mitteln als mit Excelmitteln arbeiten.

Kopiere das Makro in ein StandardModul und starte es z.B. über eine Befehlsschaltfläche
Teste das Makro aber bitte in einer Testdatei und nicht gleich in Deiner Originaldatei.

[b]Option Explicit

Sub VBA_Anwahl_aus()
With Application
'Symbolleistenmenü unter "Ansicht _
 deaktivieren
If Val(Application.Version) <= 11 Then _
.CommandBars("Toolbar List").Enabled = False
    
'Die Funktion "Anpassen" Im Menüpunkt "Extras" wird deaktiviert
.CommandBars("Worksheet Menu Bar"). _
    Controls("Extras").Controls("Anpassen...").Enabled = False
    
'Die Funktion "Makro" Im Menüpunkt "Extras" wird deaktiviert
.CommandBars("Worksheet Menu Bar"). _
    Controls("Extras").Controls("Makro").Enabled = False

'Die Symbolleiste "Steuerelement/Toolbox" wird deaktiviert falls geöffnet
.CommandBars("Control Toolbox").Visible = False
    
'Die Symbolleiste "Visual Basic" wird deaktiviert falls geöffnet
.CommandBars("Visual Basic").Visible = False

'Tastenkombination Alt F11 wird deaktiviert
.OnKey "%{F11}", ""

'VBA-Editor schließen wenn geöffnet
.VBE.MainWindow.Visible = False
End With

End Sub

Sub VBA_Anwahl_ein()
With Application
'Symbolleistenmenü unter "Ansicht _
 deaktivieren
If Val(Application.Version) <= 11 Then _
.CommandBars("Toolbar List").Enabled = True
    
'Die Funktion "Anpassen" Im Menüpunkt "Extras" wird deaktiviert
.CommandBars("Worksheet Menu Bar"). _
    Controls("Extras").Controls("Anpassen...").Enabled = True
    
'Die Funktion "Makro" Im Menüpunkt "Extras" wird deaktiviert
.CommandBars("Worksheet Menu Bar"). _
    Controls("Extras").Controls("Makro").Enabled = True

'Tastenkombination Alt F11 wird deaktiviert
.OnKey "%{F11}"

End With
End Sub
[/b]

Wie Du das VBA-Projekt dann noch schützen kannst, kannst Du auf meiner HP in der Rubrik Anleitungen und dort dann in der Anleitungsnummer 12 nach. Dort stelle ich dazu eine bebilderte Anleitung zur Verfügung, die Dir sicherlich helfen wird. Allerdings ist auch dieses, wie von Hajo angemerkt auch kein richtiger Schutz.

Bei Fragen melde Dich.

MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du
ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Antwort 3 von Hajo_Zi vom 31.12.2019, 17:33 Options

Hallo Oliver,

ich vermute mal wird der VBA Editor vor dem öffnen der Datei aktiviert. Kommt man auch an den Code,

Gruß Hajo

Antwort 4 von coros vom 31.12.2019, 17:39 Options

Hallo Hajo,

nein, der Editor wird durch die Zeile

[b].VBE.MainWindow.Visible = False[/b]


geschlossen. Aber eben nur, wenn die Makros aktiviert wurden. Daher arbeite ich immer, wenn in der Datei keiner an die VBA-Umgebung usw. herankommen soll, mit Visual Basic. Damit erstelle ich eine Exe-Datei, die mir die Exceldatei öffnet und dabei alle Enstellungen vornimmt. Die Exceldatei erhält ein Lesepasswort und noch ein paar andere Dinge und ist ohne die Exe-Datei nicht zu öffnen.

MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du
ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Antwort 5 von kvtv vom 02.01.2020, 20:26 Options

Hallo Oliver (Coros),
Du schreibst in der letzten Antwort über eine EXE-Datei. Kannst Du mir sagen wie das Funktioniert und was man dafür benötigt. Eine kleine Anleitung wäre nett.
Vielen Dank im voraus.
Gruß Karsten

Antwort 6 von coros vom 03.01.2020, 06:26 Options

Hallo Karsten,

Du benötigst dafür Visual Basic 5 oder 6. Dort erstellst Du eine Exe-Datei, die Dir die Exceldatei öffnet und übergibst im Öffnen-Befehl das Lesepasswort.

MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du
ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Antwort 7 von kvtv vom 04.01.2020, 22:27 Options

Hallo Oliver,
vielen Dank ersmal für Deine promte Antwort. Auf dem Gebiet bin ich aber ein totaler Anfänger. Kannst du mir denn mal die Zeile Posten, die ich in eine EXE umwandeln muß?
Als Beispiel könnte die Excel Datei test.xls und das Lesepasswort passwort heißen.
Kann man denn beim öffnen der EXE-Datei die Makros nicht auch blockieren , sodaß die Macros dann garnicht ausgeführt werden?
Vielen Dank im voraus.
Gruß Karsten

Antwort 8 von coros vom 05.01.2020, 06:03 Options

Hallo Karsten,

es geht nicht darum etwas in eine Exe-Datei umzuwandeln, sondern eine Exe-Datei zu erstellen. Hast Du denn überhaupt das Programm Visual Basic 5 oder 6? Wenn nicht, würde Dir auch kein Code helfen.
Die Exe-Datei kann beim Öffnen nicht blockiert werden.

MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du
ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Ähnliche Themen

wie kann man eine seite sperren
shakira  21.06.2007 - 222 Hits - 1 Antwort

Internetseiten Sperren
Andrew  21.09.2007 - 504 Hits - 3 Antworten

seiten sperren
Anjeska36  27.12.2007 - 128 Hits - 2 Antworten

Internetseiten sperren
Erna  19.03.2008 - 448 Hits - 8 Antworten

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Mon Jan 26 01:23:17 2026