Datum plaatsen in eerste lege cel

Status
Niet open voor verdere reacties.

tjeerd1972

Gebruiker
Lid geworden
8 feb 2010
Berichten
19
Ik wil door middel van een commandbutton de datum van vandaag in de eerste lege cel van bijvoorbeeld rij E zetten.
Als ik dan bijvoorbeeld de volgende dag weer op deze button klik moet de datum van vandaag er onder komen enz.
heeft iemand hier een oplossing voor alvast bedankt
 
tjeerd1972,

Code:
Private Sub CommandButton1_Click()
  Sheets(1).[E65520].End(xlUp).Offset(1) = Date
End Sub
 
Laatst bewerkt:
Ik heb 2 stukjes van mijn eigen code proberen samen te voegen.
Het werkt nog niet in een button. Die mag je zelf invoegen.
Als je je werkblad opslaat, en de volgende keer openen moet er in cel E (eerste lege cel) een datum staan, dan MOET die cel bij afsluiten van je document geheel leeg zijn.
Let wel op de cel-opmaak van je datum-cellen.

Iki heb onderstaande code niet getest (na samenvoegen).
Maar in mijn versie werkt het.

Het stukje met "rg" (verzinsel voor regelnummer) kijkt naar de eerstvolgende lege regel.
Zo niet, dan wordt er 1 bij opgeteld.
Zo ja, dan plaatst hij er de datum van vandaag.


Code:
Private Sub Workbook_Open()
  Dim rg As Integer
  
  rg = 1
  With ActiveWorkbook.Sheets("Blad1")
    Do
      rg = rg + 1
        If IsEmpty(.Range("E" & rg)) Then .Sheets("Blad1").Range("E" & rg) = Date: Exit Do
    Loop
  End With
End If
End Sub
 
Paul-RT,

Zo werkt hij bij mij.
Code:
Private Sub CommandButton1_Click()
  rg = 1
  With ActiveWorkbook.Sheets("Blad1")
    Do
      rg = rg + 1
        If IsEmpty(.Range("E" & rg)) Then Sheets("Blad1").Range("E" & rg) = Date: Exit Do
    Loop
  End With
End Sub

De code van mij doet exact het zelfde maar is een stuk korter.
Code:
Private Sub CommandButton1_Click()
  Sheets(1).[E65520].End(xlUp).Offset(1) = Date
End Sub
 
Met deze code werkt het max 1x per dag.
Code:
Private Sub Commandbutton1_Click()
  Dim MyRange As Range
  Set MyRange = ActiveSheet.Range("E65520").End(xlUp).Offset(1)
  If CDate(MyRange.Offset(-1)) <> Date Then MyRange = Date
  Set MyRange = Nothing
End Sub
 
Laatst bewerkt:
@ MArk xl: Neehoor,
In mijn facturering / klanten history, krijg ik bij de volgende keer openen van hetzelfde document op dezelfde dag, een nieuwe lege regel, met dezelfde datum.
 
De macro die ik gepost heb kijkt alleen in de cel die rechtstreeks boven de onderste cel in Kolom "E" staat.

(CTRL+END , HOME, 4x[PIJL RECHTS], CTRL+[PIJL OMHOOG])

Als deze cel niet de datum van vandaag is wordt deze ingevuld, dus ook als de waarde nul is, of een andere datum.
Als je het gebruikt om facturen te maken (dat kan natuurlijk meerdere per dag) is de code van Hoornvan wat je wilt.

ps. het lijkt me onwaarschijnlijk dat de functie Date een tijd meegeeft, maar mocht dat het geval zijn dan behoeft mijn geposte code inderdaad een kleine aanpassing
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan