Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1176to1180
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
Inhaltsverzeichnis

Code sperrt Zellen

Code sperrt Zellen
Maris
Hi Leute,
warum sperrt mir beim einfügen dieser code die Zellen? Es geht um die Codepassage die ich fett und kursiv unterlegt habe....
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
ActiveSheet.Unprotect Password:="befaster"
Dim rngEingabe As Range
Dim sFormel$, lngRow&
'Wirkungsbereich anpassen
Set rngEingabe = Intersect(Range("C2:AZ2000"), Target)
'Keine Zelle im Wirkungsbereich?
If Not rngEingabe Is Nothing Then
'Schleife über Eingabebereich
For Each rngEingabe In rngEingabe
If rngEingabe  "" Then 'ist Zelle nicht leer
lngRow& = rngEingabe.Row 'Zeile der Zelle für Formel
'Formel zusammenbauen
sFormel$ = "=(LOWER($B" & lngRow& & ")=""x"")*(COUNTA($C" & lngRow& - 1 & ":$AZ" & lngRow& - _
1 & ")=50)"
If Not CBool(Evaluate(sFormel)) Then 'Ergebnis der Formel mit Prüfung
Application.EnableEvents = False 'events aus
Application.Undo 'Handeingabe rückgängig
MsgBox "Before you can start editing this line, please fill out all cells in  _
previous row!", vbCritical, "Cancel action" 'Fehlermeldung
Application.EnableEvents = True 'events an
Exit Sub 'aussteigen
End If
End If
Next rngEingabe
End If
'keine Zeilenumbrüche
If Not Intersect(Target, Range("B2:CA2000")) Is Nothing And Target.Count = 1 Then
If InStr(Target, Chr(10)) Then
Target = Replace(Target, Chr(10), " ")
End If
End If
'länder
If Target.Column = 3 And Target.Row > 1 Then
With Application
.EnableEvents = False
Target = .Index(Sheets("Data_Tab").Columns(1), _
.Match(Target, Sheets("Data_Tab").Columns(2), 0))
.EnableEvents = True
End With
End If
' nur inhalte einfügen
Application.EnableEvents = False
If InStr(1, Application.CommandBars("Edit").Controls(1).Caption, "Einfügen") > 0 Then
Application.Undo
Selection.PasteSpecial xlPasteValues
End If
Application.EnableEvents = True

ActiveSheet.Protect Password:="befaster", AllowFormattingColumns:=True, AllowFiltering:=True
End Sub
Bitte um Hilfe!!!!
Vielen Dank im Voraus!
Gruß
Maris
AW: Code sperrt Zellen
14.09.2010 16:40:36
BoskoBiati
Hallo,
dieser Befehl:

ActiveSheet.Protect Password:="befaster",
löst den Blattschutz aus.
Gruß
Bosko
AW: Code sperrt Zellen
14.09.2010 16:53:16
Maris
der Blattschutz ist ja grundsätzlich ok. Aber nach dem einfügen werden die Zellen gesperrt die Vorher nicht gesperrt waren und es werden auch nicht die Werte eingefügt, wenn ich aus einem anderen Tabellenblatt kopiere und einfüge... Verwundert mich... weiß nicht woran das liegen mag...
Gruß
Maris
Weder der fette noch der restl Code ergibt...
14.09.2010 17:33:23
Luc:-?
…einen Anhaltspkt für dieses Verhalten, Maris;
nirgendwo steht …Locked = True, also wird das wohl nicht an dieser Ereignisprozedur liegen, sondern ggf an anderen PgmTeilen, die evtl von irgendwoher (ggf auch aus nicht gesperrten Mappen/Seiten Inhalte einkopieren. Dadurch kann dann auch die Zellsperrung mit übertragen wdn, so dass eine ursprgl entsperrte Zelle nach Setzen des Blattschutzes plötzl gesperrt ist. Da wir das weder wissen noch sehen können, musst du diese bzw andere Möglichkk selbst checken… ;->
Viel Spaß, Gruß Luc :-?
Anzeige
AW: Weder der fette noch der restl Code ergibt...
14.09.2010 17:46:08
Maris
ich kanns verhindern indem Locked = False setze... aber trotzdem werden nicht die WErte übertragen wenn ich 2 mal excel offen habe. Sondern die Formate von der anderen Datei... ausserdem hab ich den Blattschutz entfernt und damit hat sich das problem auch gelöst... Warum werden aber die Formate übertragen?
Normalerweise wird nur das Zahlenformat mit...
14.09.2010 17:53:35
Luc:-?
…übertragen (bei Zuweisung!), Maris,
keine sonstigen Zellformatierungen. Letzteres geschieht aber regelmäßig bei einfachem Copy-and-Paste
Gruß Luc :-?
AW: Normalerweise wird nur das Zahlenformat mit...
14.09.2010 17:57:45
Maris
verstehe ich jetzt nicht ganz sorry! Also wenn ich auf strg + v gehe, dann werden Zellformatierungen übertragen... aber deswegen hab ich doch das undo drin und füge dann noch mal nur die WErte ein...
Anzeige
Aha, aber so macht man das nicht,...
14.09.2010 18:03:44
Luc:-?
…Maris,
man kann nämlich manuell auch nur bestimmte Zellinhalte einfügen (Menü Bearbeiten - Inhalte einfügen) und mit VBA geht das auch (Stichwort: SpecialCells)!
Gruß Luc :-?
AW: Aha, aber so macht man das nicht,...
14.09.2010 18:29:13
Maris
natürlich... aber gibts dafür eine lösungsvariante? Ich komm nämlich nicht mehr weiter :-(
Gruß
Maris
Wie wär's, mal d.MakroRecorder zu nehmen? owT
14.09.2010 18:47:10
Luc:-?
:-?

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige