Anzeige
Archiv - Navigation
200to204
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
200to204
200to204
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zelle sperren

Zelle sperren
08.01.2003 19:38:05
Bernd
Hallo nochmal,
ich hatte schon heute mittag gepostet, aber keine befriedigende antwort bekommen. und zwar wollte ich erreichen, wenn man mit der maus oder den pfeiltasten die zelle h1 anklickt, das diese aktion nicht möglich ist und die zelle a1 aktiviert wird. als lösung wurde mir folgender code gegeben:

Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
If Target.Address = "$H$1" Then [a1].Select
End Sub

habe den code gesteste aber es funzt nicht. kann da einer bitte weiterhelfen. vielen dank

gruss

Bernd

15
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Zelle sperren
08.01.2003 19:39:59
Hajo_Zi
Hallo Bernd

wohin hast Du den Code kopiert
nicht Modul
nicht DieseArbeitsmappe

sondern die entsprechende Tabelle.

Gruß Hajo

Danke. jetzt funzt
08.01.2003 19:59:08
Bernd

Re: Zelle sperren
09.01.2003 12:43:04
Franz
Hallo Hajo,

habe hier was entdeckt, was mir auch sehr helfen würde, hab's darum auch probiert, klappt aber nicht:
bei mir soll von J6 nach J8 gesprungen werden, mein Code also:
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
If Target.Address = "$j$6" Then [j8].Select
End Sub

Hab ihn auch bei der entsprechenden Tabelle eingestzt. Habe schon rumprobiert mit Zelle entsperren oder Blattschutz rausnehmen, tut sich aber gar nichts, nicht mal ne Fehlermeldung, die mir vielleicht weiterhelfen könnte. Was mach ich falsch??

Für Deine Hilfe danke im Voraus

Gruß
Franz

Anzeige
Re: Zelle sperren
09.01.2003 12:46:27
Hajo_Zi
Hallo Franz

Du mußt Die Adresse bei Target.Addrees in Großbuchstaben schreiben

Gruß hajo

Re: Zelle sperren
09.01.2003 18:53:09
Franzq
Hallo Hajo,

vielen Dank für Deine Antwort. Wäre nie drauf gekommen, dass das hier einen Ausschlag machen könnte. Danke

Gruß
Franz

P.S.: Sorry, dass ich jetzt erst antworte. Die E-Mail-Benachrichtigung hat nicht funktioniert. Drum habe ich jetzt erst das Forum nochmal durchgeblättert.

Re: Zelle sperren
09.01.2003 19:36:56
Franz
Hallo Hajo,

ich habe da noch zwei Anschlussfragen, habe allerlei rumprobiert, auch mit der Hilfe, hab aber keine Chance:

1. Kann man die Adresse bei Target.Adress und das Sprungziel auch flexibel halten, also für alle Zellen der Zeile 6 in den Spalten von B - x, um jeweils in derselben Spalte in Zeile 8 zu springen?

2. Kann man das auch für einen benannten Bereich angeben? Also etwa WENN Target.Adress irgendeine Zelle des Bereichs gehe zu A1?

Falls es das geben sollte, schon mal danke im Voraus

Gruß
Franz


Anzeige
Re: Zelle sperren
10.01.2003 08:12:50
Hajo_Zi
Hallo Franz

das sind zwei unterschiedliche Aufgaben. Es darf immer nur eins der beiden folgenden makroes eingesetzt werden.


Option Explicit
'Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
'' erstellt von Hajo Ziplies 08.01.03
'' ein bestimmter Bereich darf nicht ausgewählt werden
' Dim RaBereich As Range, RaZelle As Range
' ' Bereich der Wirksamkeit
' Set RaBereich = Range("B3:C20, D1:D7")
'' ActiveSheet.Unprotect
' For Each RaZelle In Range(Target.Address)
' If Intersect(RaZelle, RaBereich) Is Nothing Then
' Else
' Range("A1").Select
' Exit For
' End If
' Next RaZelle
'' ActiveSheet.protect
'End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
' erstellt von Hajo Ziplies 10.01.03
' 1. Kann man die Adresse bei Target.Adress und das Sprungziel auch flexibel halten,
' also für alle Zellen der Zeile 6 in den Spalten von B - x, um jeweils in derselben
' Spalte in Zeile 8 zu springen?
' ein bestimmter Bereich darf nicht ausgewählt werden
Dim RaBereich As Range, RaZelle As Range
' Bereich der Wirksamkeit
Set RaBereich = Range("B6:X6")
' ActiveSheet.Unprotect
For Each RaZelle In Range(Target.Address)
If Intersect(RaZelle, RaBereich) Is Nothing Then
Else
Cells(8, Target.Column).Select
Exit For
End If
Next RaZelle
' ActiveSheet.protect
End Sub

Code eingefügt mit: Excel Code Jeanie

Code Jeanie
Frage
Das Umsetzen nach Html klappt perfekt, auch die Ansicht in den Foren ist gegeben. Bei manchen Foren kann man aber anscheinend nicht den dargestellten Code nach VBA rückkopieren. Warum?
Antwort
Dies liegt nicht an der Code Jeanie !!! Manche Foren interpretieren anscheinend < pre > < /pre > Tags nicht richtig und erzeugen am Zeilenende einen weichen Zeilenumbruch anstatt eines harten Zeilenumbruches. Dies führt dazu, dass im VBA-Editor die Zeilen hintereinander geschrieben werden. Zum Rückkopieren in solchen Fällen: Fügen Sie den kopierten Code aus dem Forum nach Word ein, kopieren Sie ihn dort wieder und fügen Sie ihn dann im VBA - Editor ein

Gruß Hajo

Anzeige
Re: Zelle sperren
10.01.2003 08:45:30
Franz
Hallo Hajo,

danke für Deine Antwort. Hab jetzt leider keine Zeit, kann mich erst später drum kümmern. Gebe Dir dann Rückmeldung.

Auf jeden Fall: Du sagst, es kann nur eines der beiden Makros eingesetzt werden. Ist das so, weil beide denselben Aufgabenbereich ansprechen? Hab ich das richtig kapiert?

Gruß
Franz


Re: Zelle sperren
10.01.2003 08:56:57
Hajo_Zi
Hallo Franz

ja. Ich habe es nun nicht so gesehen das Du eides zusammen haben willst. Man könnte selbstverständlich daraus auch ein Makro machen.

Gruß Hajo

Re: Zelle sperren
10.01.2003 09:22:59
Franz
Hallo Hajo,

danke, an der Verbindung der beiden Markos werde ich mich dann ja selbst versuchen, falls es Sinn machen sollte. Wie das bisherige klappt, melde ich mich wie gesagt später nochmal.

Danke bis dahin und Gruß Franz

Anzeige
Re: Zelle sperren
10.01.2003 09:50:23
christian
hi franz!

ich habe (wie du vielleicht schon im Forum gesehen hast) ein ähnliches Problem gehabt wie du in Bezug auf das Sperren der Zellen. Nachdem ich nun mein Makro am laufen habe (funktioniert auch sehr gut) bin ich allerdings drauf gekommen, dass man mit einem doppelclick dann doch die zelle aktivieren kann. was daraus resultiert dass meine gesperrte Spalte (AW) von der Zelle a1 durch eine formatierung getrennt ist. meine Zielzelle ist nun innerhalb der selben Formatierung wie die gesperrte Spalte... PERFEKT

Grüsse Christian

Ich hab's, vielen Dank
10.01.2003 14:48:12
Franz
Hallo Hajo,

es funktioniert, habe auch die Verbindung der beiden Makros hingekriegt, Du hast mir das ja super vorbereitet. Du hättest es zwar vielleicht weiter verschachtelt, ich hab's halt nacheinander geschrieben, klappt genau so. Kapiert hab ich's noch nicht ganz, aber da hab ich erst heut abend Zeit, dass ich mir die neuen Befehle genauer anschau. Ich hab noch versucht, was einzubauen, klappt aber nicht, und ist auch nicht wirklich wichtig, nämlich dass im zweiten Teil nach Auswahl des geschützten Bereiches die vorher aktive ZElle wieder ausgewählt wird:

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
' erstellt von Hajo Ziplies 10.01.03
Dim RaBereich As Range, RaZelle As Range ' Bereich der Wirksamkeit
Dim myStart As Variant

Set RaBereich = Range("B6:AF6")
For Each RaZelle In Range(Target.Address)
If Intersect(RaZelle, RaBereich) Is Nothing Then
Else
Cells(8, Target.Column).Select
Exit For
End If
Next RaZelle

myStart = ActiveCell.Address
'Set RaBereich = Range("B3:C20, D1:D7")
Set RaBereich = Range("A19:AF39")
For Each RaZelle In Range(Target.Address)
If Intersect(RaZelle, RaBereich) Is Nothing Then
Else
' Range("A5").Select
Range(myStart).Select
Exit For
End If
Next RaZelle
End Sub


Nochmal herzlichen Dank und Gruß Franz

Anzeige
Re: Zelle sperren
10.01.2003 14:57:09
Franz
Hallo Christian,

witziger Nebeneffekt, der bei mir allerdings unterschiedlich ausfällt: beim ersten Doppelklick wird, so wie Du es beschreibst, tatsächlich die Zelle aktiviert. Ab jedem weitern Doppelklick wird dann jedes Mal die Zielzelle aktiviert. Beides für mich aber ohne Bedeutung.

Gruß
Franz

Re: Ich hab's, vielen Dank
10.01.2003 15:07:02
Hajo_Zi
Hallo Franz

zum zweiten Teil komm ich nich ganz klar. Zum Anfan speicherts Du die Aktive Zelle, wenn die Zelle im Bereich springst Du wieder auf diese Zelle. Ist der Code nicht sinnlos da ja auch Zellen im gesperten bereich ausgewählt werden.
myStart hätte ich als String Definiert, benötigt weniger Speicher.

Gruß Hajo

Anzeige
Re: Ich hab's, vielen Dank
10.01.2003 16:46:17
Franz
Hallo Hajo,

ja, dachte mir schon,d ass das hier nicht gehen kann. Ich dachte, vielleicht könnte ich die Zelle speichern, in der ich bin, BEVOR ich in den gesperrten Bereich komme. War aber ein Denkfehler. Ich habe das mal eingesetzt, damit nach Bedienung einer Schaltfläche der Focus nicht auf der Schaltfläche bleibt, sondern wieder in der vorherigen Zelle ist. Danke für den Tipp mit String.

Gruß Franz

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige