Betrifft: Targetadress Zelle bestimmen
von: Johannes
Geschrieben am: 18.09.2019 16:32:29
Hallo VBA-Kenner,
ich habe folgendes Makro
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Target.Column = 15 Then Target = Date Cancel = True End If If Target.Column = 16 Then Target = Date Cancel = True End If If Target.Column = 17 Then Target = Date Cancel = True End If End Sub
Betrifft: AW: Targetadress Zelle bestimmen
von: 1713709.html
Geschrieben am: 18.09.2019 16:38:01
Hi
Du kannst ausgehend von Target andere Zellen mit .Offset erreichen
Target.Offset(0, -1).Value = Date
Gruß Daniel
Betrifft: für mich noch nicht ganz eindeutig ...
von: 1713718.html
Geschrieben am: 18.09.2019 17:32:52
Hallo
Nehmen wir mal an in Spalte(16) steht das Datum 17.09.2019
Spalten(15)&(17) sind leer.
Nun machst Du einen Doppelklick in Spalte(16)
Soll nun das Datum 17.09.2019 in Spalte(16) stehen bleiben
und Spalten(15)&(17) bekommen das Datum von heute,
oder soll das Datum von heute auch in Spalte(16) geschrieben werden?
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Dim Rng As Range Select Case Target.Column Case 15 To 17 For Each Rng In Range(Cells(Target.Row, 15), Cells(Target.Row, 17)) If Rng = "" Then Rng = Date Next Cancel = True Case Else 'mach niox End Select End SubGruß Matthias
Betrifft: AW: für mich noch nicht ganz eindeutig ...
von: 1713817.html
Geschrieben am: 19.09.2019 10:06:00
Vielen Dank Matthias für deine Mühe.
Meinte mein Makro ein wenig anders hab es so umgesetzt
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Target.Column = 14 Then Target = Date Cancel = True End If If Target.Column = 15 Then Target = Date If Target.Offset(0, -1).Value = "" Then Target.Offset(0, -1).Value = Date End If Cancel = True End If If Target.Column = 16 Then Target = Date If Target.Offset(0, -1).Value = "" Then Target.Offset(0, -1).Value = Date End If If Target.Offset(0, -2).Value = "" Then Target.Offset(0, -2).Value = Date End If Cancel = True End If If Target.Column = 17 Then Target = Date If Target.Offset(0, -1).Value = "" Then Target.Offset(0, -1).Value = Date End If If Target.Offset(0, -2).Value = "" Then Target.Offset(0, -2).Value = Date End If If Target.Offset(0, -3).Value = "" Then Target.Offset(0, -3).Value = Date End If Cancel = True End If End Subweiß natürlich, dass man dieses natürlich auch geschachtelter umsetzten kann.
Betrifft: Dir ist klar? Du überschreibst immer Target .. owT
von: 1713828.html
Geschrieben am: 19.09.2019 10:43:23
Betrifft: AW: Dir ist klar? Du überschreibst immer Target .. owT
von: 1713845.html
Geschrieben am: 19.09.2019 11:38:12
Ah stimmt daran hatte ich noch nicht gedacht.. dann muss ich wohl noch ne Wenn-Function setzen. Danke
Betrifft: AW: für mich noch nicht ganz eindeutig ...
von: 1713872.html
Geschrieben am: 19.09.2019 12:48:33
Hallo,
meinst du das so?
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Dim i Select Case Target.Column Case 14 To 17 For i = 0 To Target.Column - 14 If Target.Offset(, -i) = "" Then Target.Offset(, -i) = Date End If Next Cancel = True End Select End Sub