Im voraus besten dank
Werner
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
code
End Sub
hallo werner
geh mal so vor:
füge einen commandbtton aus der steuerelementetoolbox in deine tabelle ein.
dann eine doppelclick darauf.
(Alternativ:
rechte maus
code anzeigen)
dann kommt ein fenster das sieht etwa so aus:
Private Sub CommandButton1_Click()
End Sub
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
'
'code
'
End Sub
jetzt schneidest du mal
'
'code
'
aus und fügst ihn hier ein.
Private Sub CommandButton1_Click()
'
'code
'
End Sub
bestimmt wirst du laufzeitfehler bekommen weil der code im
Private Sub Worksheet_BeforeDoubleClick auf target zugeschnitten ist. die kann man aber
korrigieren.
wenn du es nicht schaffst, lade mal eine beispieltabelle mit dem code drin hoch.
ransi
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
' Diagonalen in Zelle
Dim RaBereich As Range
' Bereich der Wirksamkeit
Set RaBereich = Range("B3:K25")
' ActiveSheet.Unprotect
' überprüfen ob Zelle im vorgegebenen Bereich
If Not Intersect(Target, RaBereich) Is Nothing Then
' Diagonalen
' dieser Vergleich (ob linien schon vorhanden sind)
If Target.Borders(xlDiagonalDown).LineStyle = 1 Then
With Target
.Borders(xlDiagonalDown).LineStyle = xlNone
.Borders(xlDiagonalUp).LineStyle = xlNone
End With
Else
With Target
.Borders(xlDiagonalDown).LineStyle = xlContinuous
.Borders(xlDiagonalDown).Weight = xlThick
.Borders(xlDiagonalUp).LineStyle = xlContinuous
.Borders(xlDiagonalUp).Weight = xlThick
.Borders(xlDiagonalUp).ColorIndex = xlAutomatic
End With
End If
Cancel = True
End If
Set RaBereich = Nothing
' ActiveSheet.Protect
End Sub
hallo werner
habe einfach target durch activecell ersetzt.
Private Sub CommandButton1_Click()
Dim RaBereich As Range
' Bereich der Wirksamkeit
Set RaBereich = Range("B3:K25")
' ActiveSheet.Unprotect
' überprüfen ob Zelle im vorgegebenen Bereich
If Not Intersect(ActiveCell, RaBereich) Is Nothing Then
' Diagonalen
' dieser Vergleich (ob linien schon vorhanden sind)
If ActiveCell.Borders(xlDiagonalDown).LineStyle = 1 Then
With ActiveCell
.Borders(xlDiagonalDown).LineStyle = xlNone
.Borders(xlDiagonalUp).LineStyle = xlNone
End With
Else
With ActiveCell
.Borders(xlDiagonalDown).LineStyle = xlContinuous
.Borders(xlDiagonalDown).Weight = xlThick
.Borders(xlDiagonalUp).LineStyle = xlContinuous
.Borders(xlDiagonalUp).Weight = xlThick
.Borders(xlDiagonalUp).ColorIndex = xlAutomatic
End With
End If
End If
Set RaBereich = Nothing
' ActiveSheet.Protect
End Sub
ransi
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen