Microsoft Office Forum [ www.Office-Fragen.de ] >> READONLY <<

Microsoft Office 2003-2019 => Excel => Thema gestartet von: Thobs am Januar 24, 2017, 16:59:13 Nachmittag

Titel: VBA: erneutes ausführen des Makros in neuer Zeile
Beitrag von: Thobs am Januar 24, 2017, 16:59:13 Nachmittag
Hallo zusammen,
 

Ich habe bisher in Excel programmiert, dass das aktuelle Datum beim klicken auf einen Makro Button in die Zelle B7 eingefügt wird und dann in die nächste Zeile springt.
Ich möchte aber dass bei erneutem klicken auf den Button das neue aktuelle Datum in der nächsten Zeile erscheint (also in B8 und dann B9 usw.).

Das habe ich bisher programmiert:

Sub DatumSetzen()
Dim lngZeile As Long
Dim lngSpalte As Long

lngZeile = 7
lngSpalte = 2

ActiveSheet.Cells(lngZeile, lngSpalte).Activate
ActiveCell.Value = Date & ", " & Format(Time, "hh:mm")
Dim Zeile As Long
ActiveCell.Offset(1, 0).Select

End Sub


MFG Thobs
Titel: Antw: VBA: erneutes ausführen des Makros in neuer Zeile
Beitrag von: Thobs am Januar 24, 2017, 19:16:00 Nachmittag
Hat jemand von euch Ideen wie das funktioniert ? Vielen dank für eure Hilfe :)
Titel: Antw: VBA: erneutes ausführen des Makros in neuer Zeile
Beitrag von: Hennes am Januar 24, 2017, 23:06:32 Nachmittag
Hallo Thobs,

ich habe hier letztens im Forum einen Code bekommen, der bewirkt, dass automatisch
bei jedem Eintrag in Spalte B das aktuelle Datum in Spalte A gesetzt wird.
Vielleicht hilft dir das ja weiter.

Gruß Hennes


Private Sub Worksheet_Change(ByVal Target As Range)
Dim rngDV As Range
Dim wert_old As String
Dim wertnew As String
On Error GoTo Errorhandling
If Not Application.Intersect(Target, Range("J3:J7300")) Is Nothing Then
  Set rngDV = Target.SpecialCells(xlCellTypeAllValidation)
  If rngDV Is Nothing Then GoTo Errorhandling
    If Not Application.Intersect(Target, rngDV) Is Nothing Then
    Application.EnableEvents = False
    wertnew = Target.Value
    Application.Undo
    wertold = Target.Value
    Target.Value = wertnew
    If wertold <> "" Then
      If wertnew <> "" Then
        Target.Value = wertold & ", " & wertnew
      End If
    End If
  End If

End If

Errorhandling:
Application.EnableEvents = True

   If Target.Column <> 2 Then Exit Sub
   If Target = "" Then
      Target.Offset(0, -1) = ""
   Else
      Target.Offset(0, -1) = Date
End If

End Sub


Titel: Antw: VBA: erneutes ausführen des Makros in neuer Zeile
Beitrag von: mumpel am Januar 25, 2017, 01:33:19 Vormittag
Hallo!

Einfach die letzte beschrieben Zelle/Zeile ermitteln.

Code: Visual Basic
  1.     Sub DatumSetzen()
  2.    
  3.       With ActiveSheet
  4.            .Range("B" & .Range("B" & Rows.Count).End(xlUp).Row + 1).Value = Date & ", " & Format(Time, "hh:mm")
  5.       End With
  6.      
  7.     End Sub
  8.  

Gruß, René
Titel: Antw: VBA: erneutes ausführen des Makros in neuer Zeile
Beitrag von: Thobs am Januar 25, 2017, 23:32:47 Nachmittag
Vielen Dank für eure Hilfe  :)
Hat geklappt :)