2.6k Aufrufe
Gefragt in Tabellenkalkulation von holli62 Einsteiger_in (61 Punkte)
Guten Abend
In 2 Zellen werden mittels Formeln Ergebnisse errechnet
Diese 2 Zellen möchte ich nun vor unbeabsichtigten Eingaben sperren
Ist dies durch VBA möglich
MfG
Holli62

8 Antworten

0 Punkte
Beantwortet von hajo_zi Experte (9.1k Punkte)
Hallo Holli,

das geht auch ohne VBA.
markiere die gesamte Tablle, Zellnformatieren, Schutz, pesperrt entfernen, Deine beiden Zellen markieren und gesperrt wieder rein und Tabelle schützen.

Gruß Hajo
0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo Holli,

folgender Code schützt die Zellen B1 und B1.

Option Explicit

Sub schuetzen()
With Range("A1:B1")
.Locked = True
.FormulaHidden = True
End With
ActiveSheet.Protect
End Sub


Gruss
Rainer
0 Punkte
Beantwortet von holli62 Einsteiger_in (61 Punkte)
Hallo
Habe den VBA Code in ein modul eingefügt
und die Zellbezeichnung geändert
Aber es lasen sich immer noch Eingaben in die zellen schreiben
was mache ich falsch
Gruss
Holli62
0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo Holli,

ändere diese Zeile

With Range("A1:B1")


in

With ActiveSheet.Range("A1:B1")


Gruss
Rainer
0 Punkte
Beantwortet von holli62 Einsteiger_in (61 Punkte)
Hallo Rainer
Code geändert , funzt immer noch nicht
Gruss
Holli62
0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo Holli,

Dein Problem wird sein, dass Du das Makro von Rainer nicht ausgeführt hast. Das muss aber sein, damit die Zellen geschützt werden.
Besser wäre aber ein Code, der selber erkennt, wenn eine Zelle angeklickt wird, ob sich in der Zelle eine Formel befindet. Nachfolgend mal ein VBA-Code, der dies realisiert.

Kopiere das Makro in das VBA-Projket des Tabellenblatts, in dem er wirken soll.
Teste das Makro aber bitte in einer Testdatei und nicht gleich in Deiner Originaldatei.

Option Explicit

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Cells.HasFormula Then
ActiveSheet.Protect ""
Exit Sub
Else
ActiveSheet.Unprotect ""
End If
End Sub
Hier wird immer wenn eine Zelle markiert wird, geprüft, ob sich darin eine Formel befindet. Wenn ja, wird die Zelle gesperrt.

Solltest Du nicht wissen, wie Du den Code in Deine Datei bekommst, dann schau mal auf meiner HP in der Rubrik Anleitungen und dort dann in der Anleitungsnummer 2 nach. Dort stelle ich dazu eine bebilderte Anleitung zur Verfügung, die Dir sicherlich helfen wird.

Bei Fragen melde Dich.

MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
0 Punkte
Beantwortet von holli62 Einsteiger_in (61 Punkte)
Hallo Oliver
Das Makro und die Anleitung auf deiner HP haben mein Poblem gelöst
Vielen Dank
Noch eine Frage
Wie machst du und die anderen das mit den VBA - Codes
Gibt es Online eine Anleitung ( Kurs ) , wo man hinter die Geheimnisse des VBA steigen kann

MfG
Holli62
0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo Holli,

freut mich, dass es funktioniert und danke für Deine Rückmeldung. Einen Onlinekurs kann ich Dir nicht empfehlen. Was ich Dir empfehlen kann, hier im Forum mal einige vorgestellte Lösungen durchprobieren und rumprobieren. Das bringt schon eine gamze Menge.

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