xaumichi
Goto Top

Nur eine Zelle aktivieren erlaubt

Hallo!

Ist es möglich, mit VBA einen Code zu schreiben, dass verhindert wird, dass in einem Worksheet mehr als eine Zelle aktiviert/selektiert wird?

Hintergrund: is gibt im vorhanden Code einige Passagen, mit "...Target.Row...." usw. und diese funktionierten natürlich nicht mehr, wenn nun zB 2 Zellen markiert werden und dann der Inhalt davon gelöscht wird.

Lg Mike

Content-ID: 149601

Url: https://administrator.de/contentid/149601

Ausgedruckt am: 22.11.2024 um 20:11 Uhr

atbs84
atbs84 24.08.2010 um 12:47:25 Uhr
Goto Top
Moin,
frag doch im Code vor diesen Passagen ab wieviele Zellen markiert sind und führe die entsprechende Aktion dann bei mehreren Zellen einfach nicht aus..., bzw. mach diese Abfrage vor dem Funktionsaufruf (also z.B. wenn der Benutzer dann den Button benutzt, der deine Aktionen da auslöst)
76109
76109 24.08.2010 um 13:04:33 Uhr
Goto Top
Hallo Mike!

Das läßt sich doch ganz einfach per 'Target.Count > 1' überprüfen.

Beispiel:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Count > 1 Then MsgBox "Es wurden mehr als eine Zelle ausgewählt!"  
End Sub

Du könntest auch etwas in der Art machen:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Count > 1 Then Cells(Target.Row, Target.Column).Select
End Sub
Wobei die Selektierung mehrerer Zellen aufgehoben wird, und nur die erste Zelle selektiert wird.face-wink

Gruß Dieter
xaumichi
xaumichi 24.08.2010 um 13:56:58 Uhr
Goto Top
@atbs84: Danke für die Gedankenstütze!

@ didi1954:
Hui....das ist aber ne coole sache!
Genau so hab ich mir das vorgestellt
Danke schön! face-smile