Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1296to1300
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

Datei Bereich schützen von Halo_Zi.

Datei Bereich schützen von Halo_Zi.
09.02.2013 18:34:44
Halo_Zi.
Hallo Excel-Fachleute,
ich habe eine Datei von Halo_Zi. ( Bereich schützen, Beispiel 03 ) , wo bei erneuter Wahl einer
bereits belegten Zelle in einem definierten Bereich automatisch der Cursor zur nächsten freien
Zelle im definierten Bereich springt.
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
'* H. Ziplies                                     *
'* 06.08.10                                       *
'* erstellt von HajoZiplies@web.de                *
'* http://Hajo-Excel.de/
' ein bestimmter Bereich darf nicht ausgewählt werden
' Im Bereich D1:G75 darf eine ausgefüllte Zelle nicht noch mal
' gewählt werden.. Werden mehere Zellen markiert, wird Zeilenweise
' abgearbeitet und in der ersten ausgefüllten Spalte, die erste freie Zelle
' in der Spalte gewäht
Dim RaBereich As Range                  ' Variable für Bereich
Dim RaZelle As Range                    ' Variable für Zelle
' BoWert ist mit Definition False, bei True wurde eine Zelle gewählt
Dim BoWert As Boolean
Dim InI As Integer                      ' Variable für Spalte
Dim LoJ As Long                         ' Variable für letzte Zeile
Dim LoK As Long                         ' Variable für Zeile
' Bereich der Wirksamkeit
Set RaBereich = Range("D1:G75")
' noch mehr Bereiche
'Set RaBereich = Union(Range("C11:AG11 , C13:AG13, C15:AG15 , C17:AG17"), _
'    Range("C35:AE35, C37:AE37, C43:AG43, C45:AG45 , C47:AG47 , C49:AG49"), _
'    Range("C67:AF67 , C69:AF69 , C75:AG75 , C77:AG77 , C79:AG79 , C81:AG81"), _
'    Range("C99:AF99 , C101:AF101, C107:AG107 , C109:AG109 , C111:AG111"), _
'    Range("C127:AG127 , C129:AG129 , C131:AG131 , C133:AG133 , C139:AF139"), _
'    Range("C155:AG155, C157:AG157 , C159:AG159 , C161:AG161 , C163:AG163"), _
'    Range("C179:AF179 , C181:AF181, C187:AG187 , C189:AG189 , C191:AG191"))
Set RaBereich = Intersect(RaBereich, Range(Target.Address))
If Not RaBereich Is Nothing Then
'ActiveSheet.Unprotect "Passwort"
For Each RaZelle In RaBereich
If RaZelle  "" Then               ' Zellinhalt verschieden von leer
For InI = RaZelle.Column To 7
If InI = RaZelle.Column Then
LoK = RaZelle.Row + 1
Else
LoK = 1
End If
For LoJ = LoK To 75
If Cells(LoJ, InI) = "" Then
Cells(LoJ, InI).Select
BoWert = True
Exit For
End If
Next LoJ
If BoWert = True Then Exit For
Next InI
If BoWert = False Then
Range("A1").Select
MsgBox "Es wurde keine leere Zelle im Bereich gefunden"
End If
End If
Next RaZelle
'ActiveSheet.Protect "Passwort"
End If
Set RaBereich = Nothing                 ' Bereich leeren
End Sub
Ich möchte den definierten Bereich verändern und zwar:
Set RaBereich = Union(Range("E15:E17, P19, E31:E33, P35, E47:E49, P51"), _
Range("U15:U17, AF19, U31:U33, AF35, U47:U49, AF51"), _
Range("AK15:AK17, AV19, AK31:AK33, AV35, AK47:AK49, AV51"), _
Range("BA15:BA17, BL19, BA31:BA33, BL35, BA47:BA49, BL51"))
In dem neu definierten Bereich funktioniert der Code von E15:E17. Danach nur ein Sprung zur Zelle A1
mit seinen Hinweis.
Ich bin in VBA noch recht unsicher und deshalb die Frage, ob eine Kombination von Zellbereiche und
Einzelzellen überhaupt möglich ist und wie könnte evtl. eine Lösung aussehen.
Für evtl. Tipps oder Anregungen schon mal besten Dank!
Werner Go.

16
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datei Bereich schützen von Halo_Zi.
09.02.2013 18:46:20
Halo_Zi.
Hallo Werner,
der Teil mit mehr Bereiche ist falsch, habe ich jetzt im Original löscht.
Für getrennte Bereiche ist der Code nicht vorgesehen.
Da muss ich mal sehen ob ich das morgen gelöst bekomme.

AW: Datei Bereich schützen von Halo_Zi.
09.02.2013 19:07:41
Halo_Zi.
Hallo Werner,
der Teil mit mehr Bereiche ist falsch, habe ich jetzt im Original löscht.
Für getrennte Bereiche ist der Code nicht vorgesehen.
Da muss ich mal sehen ob ich das morgen gelöst bekomme.

Anzeige
AW: Datei Bereich schützen von Halo_Zi.
09.02.2013 19:53:57
Halo_Zi.
Hallo Hajo,
ich bin begeistert über Deine kurzfristige Antwort und auch tolle Hilfe.
Deine geänderte Datei, mit dem neuen Tabellenblatt, entspricht genau meinen Vorstellungen.
Für Deine Bemühungen besten Dank!
Schöne Grüße
Werner

AW: Datei Bereich schützen von Halo_Zi.
10.02.2013 13:37:49
Halo_Zi.
Hallo Hajo,
Du hattest mir gestern folgende Datei geschickt ( bereich_schützen ):
http://hajo-excel.de/chCounter3/getfile.php?id=30 .
Von den ersten Test des Tabellenblattes 3_2 bin ich auch begeistert gewesen.
Heute habe ich mich weiter damit beschäftigt und habe einen Fehler gefunden, der mir gestern
nicht aufgefallen ist.
Wenn ich in einer leeren Zelle einen Wert eingebe, dann springt der Cursor zur nächsten freien
Zelle usw. . Wenn ich aber danach auf diese belegte Zelle gehe, dann bleibt der Cursor darauf stehen und
springt nicht zur nächsten freien Zelle.
Kannst Du mir evtl. noch einmal helfen? So sicher bin ich in VBA noch nicht, um dieses Verhalten zu verändern.
Schöne Grüße
Werner

Anzeige
AW: Datei Bereich schützen von Halo_Zi.
10.02.2013 13:49:58
Halo_Zi.
Hallo Werner,
da hatte ich wohl was falsch gesehen, ich hatte mich schon gewundert das der Code Selection ist, ich dachte es geht um Eingaben.
Ich habe die Datei geändert.
Gruß Hajo

AW: Datei Bereich schützen von Halo_Zi.
10.02.2013 15:15:56
Halo_Zi.
Hallo Hajo,
hast Du meine neue Mitteilung erhalten?
Ich wollte die Vorschau anklicken und alles war weg.
Schöne Grüße
Werner

AW: Datei Bereich schützen von Halo_Zi.
10.02.2013 15:37:27
Halo_Zi.
Hallo Werner,
auf meine Antwort habe ich nur ein Mitteilung zu diesem Beitrag erhalten.
Gruß Hajo

Anzeige
AW: Datei Bereich schützen von Halo_Zi.
10.02.2013 15:38:23
Halo_Zi.
Hallo Hajo,
es ist wohl in der Datei einiges durcheinander geraten.
Wenn ich Excel öffne und Deine neue geänderte Datei lade, so kann ich alle Codes in den Tabellenblätter 1 bis 4 und Spalte schützen
ausführen. Funktioniert alles einwandfrei. Wenn ich in dem Tabellenblatt 3_2 die Zelle mit der 1 anklicke, so springt der Cursor
zur nächsten freien Zelle. Nur danach funktioniert in allen Tabellenblätter kein Code mehr. In allen belegten Zellen bleibt der Cursor
stehen.
Wenn ich Excel wieder neu öffne, die Datei lade, so ist wieder das gleiche Verhalten wie beschrieben.
Wie im Tabellenblatt 3 der Cursor, nach anklicken einer belegten Zelle, zur nächsten freien Zelle springt, so hätte ich
ich es auch im Tabellenblatt 3_2.
Ich gebe in einer freien Zelle etwas ein und der Cursor springt zur nächsten freien Zelle. Wenn ich danach irgend eine belegte Zelle
anklicke, so soll der Cursor wieder zur nächsten freien Zelle springen.
Nur es soll nicht ein einzelner Bereich sein, sonder mehrere getrennte Bereiche ( so wie Du im Tabellenblatt 3_2
schon dargestellt ).
Schöne Grüße
Werner

Anzeige
AW: Datei Bereich schützen von Halo_Zi.
10.02.2013 15:47:14
Halo_Zi.
Hallo Werner,
zu wenig getestet. Jetzt sollte es gehen.
Gruß Hajo

AW: Datei Bereich schützen von Halo_Zi.
10.02.2013 18:36:18
Halo_Zi.
Hallo Hajo,
wenn ich jetzt die erste leere Zelle anklicke ( E15 ), dann springt der Cursor in A1 und es kommt die
Meldung "Es wurde keine leere Zelle im Bereich gefunden" . So verhält es sich auch mit den
anderen Zellen und eine Eingabe ist nicht möglich.
Ich habe A1 in E15 geändert und dadurch konnte die erste Eingabe vorgenommen werden.
Der Cursor springt auch zur nächsten leere Zelle. Auch wenn ich andere belegte Zellen anklicke,
springt der Cursor zur nächsten leere Zelle.
Aber wenn ich die nächste leere Zelle anklicke kommt wieder die o.g. Meldung.
Ich habe im Code vom 10.02. diesen Code-Teil herausgenommen
If BoWert2 = False Then
Range("A1").Select
MsgBox "Es wurde keine leere Zelle im Bereich gefunden"
End If
und bis zur letzten Zelle funktioniert alles einwandfrei. Nur es ist für die Zellen kein Schutz mehr vorhanden.
Es können beliebig in den Zellen Eingaben entfernt werden.
Für mich dürfte es so ausreichend sein. Nur wenn Wert auf einen Schutz der belegten Zellen gelegt werden sollte,
so müsste hier noch nachgebessert werden.
Mir fällt noch auf, dass in den anderen Tabellen die belegten Zellen nicht mehr geändert werden können.Währe es möglich,
den Schutz dieser Zellen entweder Blattweise oder für die ganze Datei, um die Eingabe von neuen Werten zu ermöglichen,
auszuschalten ( z.B. eine Schaltfläche im Bereich der Add-Ins ).
Für mich währe diese Möglichkeit ausreichend, weil ich nur einen Schutz für unbeabsichtigte Veränderungen haben möchte.
Schöne Grüße
Werner

Anzeige
AW: Datei Bereich schützen von Halo_Zi.
10.02.2013 19:02:37
Halo_Zi.
Hallo Werner,
ich entferne das Beispiel wieder aus der Datei. Das ist mir nun doch zu aufwendig.
Gruß Hajo

AW: Datei Bereich schützen von Halo_Zi.
10.02.2013 19:08:22
Halo_Zi.
Hallo Hajo,
besten Dank für Deine Bemühungen. Du hast mir sehr geholfen.
Wie ich Dir geschrieben habe, ist für mich jetzt der Code voll ausreichend.
Schöne Grüße
Werner

AW: Datei Bereich schützen von Halo_Zi.
10.02.2013 19:19:37
Halo_Zi.
Hallo Werner,
ich vermute du füllst nur eine Zelle?
If BoWert2 = False And Target "" Then
Gruß Hajo

Anzeige
AW: Datei Bereich schützen von Halo_Zi.
10.02.2013 20:48:27
Halo_Zi.
Hallo Hajo,
es ist richtig, dass ich immer nur eine Zelle ausfülle.
Ich habe Deine Änderung eingebaut.
Wenn ich jetzt in einer Zelle etwas eingebe, dann springt der Cursor zur nächsten freien Zelle.
Wenn ich belegte Zellen anklicke, dann springt der Cursor auch zur nächsten freien Zelle und
die belegten Zellen sind jetzt auch geschützt.
Damit bin ich sehr zufrieden und entspricht genau meinen Vorstellungen.
Besten Dank und
schöne Grüße
Werner

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige