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.

Datum automatisch nach jeder Zeile ausgeben
#1
Photo 
Hallo, 

ich möchte gerne wissen, wie man sowas automatisiert. Bin ein Laie, was VBA angeht und lerne gerade ;)
Es geht um folgendes:

Ich will, dass wenn ich jeden Tag diese Excel-Datei öffne eine Zeile am Ende des Tages dick unterstrichen wird und bei einer bestimme Zelle das neue heutige Datum eingefügt wird.
Und dies ändert sich dann jeden Tag von automatisch, sobald ich die Datei öffne.

Hier mal nachgebildet, um es verständlicher zu machen:
[img]
Dateiupload bitte im Forum! So geht es: Klick mich!
]


Vielen Dank für eure Hilfe!
Antworten Top
#2
Hi,

(31.05.2017, 23:17)Thanatos schrieb: Ich will, dass wenn ich jeden Tag diese Excel-Datei öffne eine Zeile am Ende des Tages dick unterstrichen wird und bei einer bestimme Zelle das neue heutige Datum eingefügt wird.

Die Infos sind etwas dürftig:
nach welcher Bedingung soll welche Zelle unterstrichen werden und in welche Zelle soll das heutige Datum eingetragen werden?

Also stelle bitte (D)eine (Beispiel-)Tabelle als Excel-Datei zur Verfügung oder stelle die relevanten Ausschnitte und die Makro-Codes hier dar, siehe die als Wichtige Themen: markierten Beiträge im Forum "Nutzungs- und Bedienungshinweise" bei "Forumstechnik".
  • Eine Beispieldatei muss vom Aufbau her zwingend dem Original gleichen, sonst wird's mit gezielter Hilfe i. d. R. nichts oder erst nach zig Nachfragen
  • Meistens reichen 10-15 Datensätze
  • Sensible Daten sollen anonymisiert werden
  • Bei einigen Datensätzen sollte unbedingt händisch das Wunschergebnis eingetragen sein
  • Und last but not least ist es wichtig, im Post zugeschnitten auf die Beispieldatei eine ordentliche Problembeschreibung abzugeben.
Die farbigen Texte sind anklickbare Links:

Hier steht, wie es geht:
Beitrag 1 WICHTIG: Arbeitsmappen zur Verfügung stellen
Beitrag 2 WICHTIG: Tabellenausschnitte und VBA-Codes im Forum einstellen

Eine Bitte:
Anstatt Screenshots ist eine Datei oder ein Ausschnitt besser!
"Du gehst ja auch nicht in die Werkstatt und gibst ein Foto Deines kaputten Autos ab!"
[-] Folgende(r) 1 Nutzer sagt Danke an Rabe für diesen Beitrag:
  • Thanatos
Antworten Top
#3
Moin Ralf,
die Forderung an sich scheint mir klar. 
Nur die Rahmenbedingungen nicht.
Und ja, auch ich arbeite lieber mit als *.xlsx vorhandenen Daten, das erspart Missverständnisse und unnötige Arbeit.

Ich denke: Wenn das Workbook geöffnet wird, soll unterhalb der letzten beschriebenen Zeile ein dicker Rahmen eingefügt werden und in der Zeile darunter in Spalte_C das aktuelle datum.
So weit, so klar (erscheinend). Aber was ist, wenn das WB mehrfach am Tag geöffnet wird? "Machen wir nicht" ist eine Ausrede, denn es soll ja vorkommen, dass sich ein Rechner einmal aufhängt ...
Und ach ja, wenn das WB nur mal eben zum Nachsehen geöffnet wird, ohne dass ein weiterer Wert in die neue Zeile eingetragen wird?
Beste Grüße
  Günther

Excel-ist-sexy.de
  …schau doch mal rein!
Der Sicherheit meiner Daten wegen lade ich keine *.xlsm bzw. *.xlsb- Files mehr herunter! -> So geht's ohne!
Antworten Top
#4
Hallöchen,

das wäre mein Ansatz:

Code:
Private Sub Workbook_Open()
'Mit dem Blatt Tabelle1
 'Wenn letzter Eintrag in C <> Heute dann
   'Mit der letzen gefuellten Zelle in Spalte B
     'Rahmen unter Bereich A:C dieser Zeile setzen
     'rechts unterhalb der letzten gefundenen Zelle von B Datum eintragen
   'Ende Mit der letzen gefuellten Zelle in Spalte B
 'Ende Wenn letzter Eintrag in C <> Heute dann
'Ende Mit dem Blatt Tabelle1
End Sub
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
[-] Folgende(r) 1 Nutzer sagt Danke an schauan für diesen Beitrag:
  • Thanatos
Antworten Top
#5
Vielen Dank für eure Antworten! 

Tut mir leid. Ich füge nun die Datei und den Ausschnitt hinzu.


Code:
   Selection.Borders(xlDiagonalDown).LineStyle = xlNone
   Selection.Borders(xlDiagonalUp).LineStyle = xlNone
   Selection.Borders(xlEdgeLeft).LineStyle = xlNone
   With Selection.Borders(xlEdgeBottom)
       .LineStyle = xlContinuous
       .ColorIndex = 0
       .TintAndShade = 0
       .Weight = xlMedium
   End With
   Selection.Borders(xlEdgeRight).LineStyle = xlNone
   Selection.Borders(xlInsideHorizontal).LineStyle = xlNone
   Range("C5").Select
   ActiveCell.FormulaR1C1 = "=TODAY()"

Wie gesagt, bin leider kein Profi..
Antworten Top
#6
Hallöchen,

hier mal auscodiert Smile
Code:
Private Sub Workbook_Open()
'Mit dem Blatt Tabelle1
With Sheets("Tabelle1")
 'Wenn letzter Eintrag in C <> Heute dann
 If Cells(Rows.Count, 3).End(xlUp) <> Date Then
   'Mit der letzen gefuellten Zelle in Spalte B
   With .Cells(Rows.Count, 2).End(xlUp)
     'Rahmen unter Bereich A:C dieser Zeile setzen
     .Offset(, -1).Resize(, 3).Borders(xlEdgeBottom).LineStyle = xlContinuous
     .Offset(, -1).Resize(, 3).Borders(xlEdgeBottom).Weight = xlMedium
     'rechts unterhalb der letzten gefundenen Zelle von B Datum eintragen
     .Offset(1, 1) = Date
   'Ende Mit der letzen gefuellten Zelle in Spalte B
   End With
 'Ende Wenn letzter Eintrag in C <> Heute dann
 End If
'Ende Mit dem Blatt Tabelle1
End With
End Sub

Eine Datei ist aus meiner Sicht nicht nötig.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
[-] Folgende(r) 1 Nutzer sagt Danke an schauan für diesen Beitrag:
  • Thanatos
Antworten Top


Gehe zu:


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