Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Doppelklick in Zelle Wert eintragen
#1
Hallo Zusammen,

ich habe folgenden Code, mit dem durch Doppelklick ein Häckchen in einer Zelle gesetzt wird.
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

If Not Intersect(Target, Range("H6:J40")) Is Nothing Then  'Bereich anpassen
If Target.Value = "" Then Target.Value = "ü" Else Target.Value = ""
End If
End Sub
Wie kann der Code geändert werden, damit pro Zeile von Spalte H bis J nur einmal ein "ü" vorkommt.
zB, wenn in J6 bereits ein Zeichen ist und ich mache einen Doppelklick in H6 soll das Zeichen in J6 gelöscht werden und in H6 gesetzt werden usw., und das für jede Zeile extra i. o. definierten Bereich

Danke im Voraus!
LG Herbert
Windows 10
Office 365
Antworten Top
#2
Hallo!
Ungetestet:
Code:
With Target
   If .Value = "" Then
      Intersect(.Row, Range("H6:J40")).ClearContents
      .Value = "ü"
   Else .Value = ""
   End If
End With

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#3
Hi,

und soll zumindest ein Haken bleiben?

Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

    If Not Intersect(Range("H6:J40"), Target) Is Nothing Then
         Intersect(Target.EntireRow, Range("H6:J40")).ClearContents
         Target.Value = "ü"
         Cancel = True
    End If
End Sub
lg Chris
Feedback nicht vergessen.
[Bild: v.gif]
3a2920576572206973742064656e20646120736f206e65756769657269672e
[-] Folgende(r) 1 Nutzer sagt Danke an chris-ka für diesen Beitrag:
  • herbert0803
Antworten Top
#4
Hallo Chris,

ja ein Haken soll bleiben.

Dein Code funktioniert genau so wie ich es wollte.

Danke!
LG Herbert
Windows 10
Office 365
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste