Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
452to456
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
452to456
452to456
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

sperren nach Eingabe - weiter zu Zelle X

sperren nach Eingabe - weiter zu Zelle X
11.07.2004 19:35:41
Jean-Pierre
Hallo zusammen,
ich komme nicht weiter...
Ich habe einen Eingabebereich (B:J)
In A ist eine kleine Formel (=WENN(C2>0;A2+1;"").
In den Spalten F und G habe ich eine Gültigkeitsliste in den Spalten H, I und J
kann man via Doppelklick eine Zelle (entweder H, I oder J) ein X erzeugen.
Code hierfür:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Column >= 8 And Target.Column <= 10 And Target.Row > 1 Then
'        ActiveSheet.Unprotect
Cancel = True
With Range("H" & Target.Row & ":J" & Target.Row)
.Borders(xlDiagonalDown).LineStyle = xlNone
.Borders(xlDiagonalUp).LineStyle = xlNone
End With
With Target
.Borders(xlDiagonalDown).LineStyle = xlContinuous
.Borders(xlDiagonalDown).Weight = xlThin
.Borders(xlDiagonalUp).LineStyle = xlContinuous
.Borders(xlDiagonalUp).Weight = xlThin
End With
'        ActiveSheet.Protect
End If
End Sub

In K erfolgt ein autom. Eintrag - =WENN($C2>0;BenutzerName1();"")-.
Code (in Modul 1) hierfür:
Option Explicit
Dim BName As String
Declare Function GetUserName Lib "advapi32.dll" _
Alias "GetUserNameA" (ByVal lpBuffer As String, _
nSize As Long) As Long
Function BenutzerName1()
Dim Buffer As String * 100
Dim BuffLen As Long
Application.Volatile
BuffLen = 100
GetUserName Buffer, BuffLen
BenutzerName1 = Left(Buffer, BuffLen - 1)
' JM 11.07.2004
End Function
Function BenutzerName()
Application.Volatile
BenutzerName = Application.UserName
End Function
Ich möchte nun wenn in Zelle H, I oder J ein Doppelklick erfolgt das die gesamte Zeile (A:K) gesperrt/geschützt wird und automatisch die nächste Zelle B3, B4, B5 etc. markiert wird.
Wie kann man das machen?
Ich hoffe das nicht zuviel war.
Schöne Grüße aus Berlin
Jean-Pierre

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: sperren nach Eingabe - weiter zu Zelle X
ChrisL
Hi Jean-Pierre
Erstmal alle A:K entsperren (Zellen formatieren, Schutz, Gesperrt entfernen). Dann nach dem gleichen Prinzip aber diesmal mit der "Lock" Eigenschaft.
Gruss
Chris

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Column >= 8 And Target.Column <= 10 And Target.Row > 1 Then
ActiveSheet.Unprotect
Cancel = True
With Range("A" & Target.Row & ":K" & Target.Row)
.Locked = True
End With
With Range("H" & Target.Row & ":J" & Target.Row)
.Borders(xlDiagonalDown).LineStyle = xlNone
.Borders(xlDiagonalUp).LineStyle = xlNone
End With
With Target
.Borders(xlDiagonalDown).LineStyle = xlContinuous
.Borders(xlDiagonalDown).Weight = xlThin
.Borders(xlDiagonalUp).LineStyle = xlContinuous
.Borders(xlDiagonalUp).Weight = xlThin
End With
ActiveSheet.Protect
End If
End Sub

Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige