Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1196to1200
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Problem Datumsformat

Problem Datumsformat
Julia
Hallo,
ich ziehe mir die Daten aus einer DB.
Siehe Beispieldatei:
https://www.herber.de/bbs/user/73363.xls
In Spalte A steht das importierte Datum.
In der Spalte hätte ich gerne die Differenz zum heutigen Datum in Tagen
Also Heute() – Wert aus Spalte A.
Leider bekomm ich die Spalte A nicht als Datum formatiert.
Die Uhrzeit brauch ich nicht.
Wenn ich die Uhrzeit in jeder Spalte händisch lösche, dann kann ich die Spalte A als Datum formatieren.
Kann man das als Makro lösen?
1.) Lösche mir in Spalte A die letzten 6 Zeichen. Von A2 bis zum letzten Eintrag in Spalte A
2.) In Spalte B die Differenz zum heutigen Datum – Datum in Spalte A in Tagen
Händisch bekomme ich es hin:
Letzten 6 Zeichen löschen. Ich muss es aber löschen. Mit der „LINKS“ Funktion geht es nicht.
Jemand eine Idee?
Gruß
Julia

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Problem Datumsformat
02.02.2011 14:13:46
Hajo_Zi
Hallo Julia,
=HEUTE()-LINKS(A2;9)*1

AW: Problem Datumsformat (zu 99% gelöst) :)
02.02.2011 14:16:00
Julia
Genial!!!
Vielen Dank...
Wie kann ich das als Makro lösen, also in Zeile 2 beginnen bis zur letzten Zeile.
Ich weiß nie wieviel Datensätze ich importiere....
AW: Problem Datumsformat (zu 99% gelöst) :)
02.02.2011 14:22:07
Hajo_Zi
Hallo Julia,
Option Explicit
Sub Julia()
Dim LoLetzte As Long
Dim Loi As Long
LoLetzte = IIf(IsEmpty(Cells(Rows.Count, 1)), Cells(Rows.Count, 1).End(xlUp).Row, Rows. _
Count)
For Loi = 2 To LoLetzte
Cells(Loi, 2).FormulaLocal = "=HEUTE()-LINKS(A2;9)*1"
Next Loi
End Sub
Gruß Hajo
Anzeige
AW: Problem Datumsformat (zu 99% gelöst) :)
02.02.2011 14:33:55
Julia
Bin nicht so die makrospezialistin.
Wenn mein Datum in Spalte J steht und das Ergebnis (Dauer in Tagen) in Spalte K stehen soll muss ich ja das Skript anpassen
So richtig?
"=HEUTE()-LINKS(J2;9)*1"
Muss ich Rows.Count auch anpassen?
J ist die 10. Spalte
und K die 11.
AW: Problem Datumsformat (zu 99% gelöst) :)
02.02.2011 14:38:12
Hajo_Zi
Hallo Julia,
es ist immer vion Vorteil, wenn man die Aufgabe auf Grundlade des Originals beschreibt. Dann brauch man nichts anpassen.
Du mußt auch die Zelle anpassen wo was reingeschrieben wird und auch die Zeile wo die letzte Zelle festgestellt wir.
A =1
B=2
C=3
...
Gruß Hajo
Anzeige
damit's ein wenig flotter geht
02.02.2011 14:36:03
Rudi
Hallo,
Datum in J, Dauer in K
Sub Julia()
With Range(Cells(2, 10), Cells(Rows.Count, 10).End(xlUp)).Offset(, 1)
.FormulaR1C1 = "=today()-left(rc[-1],9)"
.NumberFormat = "0"
End With
End Sub

Gruß
Rudi
@ Rudi
02.02.2011 14:41:17
Julia
Klappt super.
Die Spalte J erkenn ich ja in deinem Code (die 10)
Aber wo sehe ich K (ist ja die 11. Spalte)?
Ich frage deshalb das ich das Makro anpassen kann falls die Felder sich mal verschieben.
Mal angenommen das Ergebnis müsste in Z stehen :)
Wäre über ne Info sehr dankbar :)
AW: @ Rudi
02.02.2011 14:55:35
Rudi
Hallo,
hier siehst du das:
With Range(Cells(2, 10), Cells(Rows.Count, 10).End(xlUp)).Offset(, 1)
Für Z müsste es .Offset( ,16) heißen.
Gruß
Rudi
Anzeige
Vielen Dank euch beiden!
02.02.2011 15:45:59
Julia
Super
noch eine flotte Variante
02.02.2011 17:14:45
Erich
Hi Julia,
so ginge es wohl auch recht fix:

Sub Julia2()
Dim lngD As Long, arrD, zz As Long
lngD = Cells(Rows.Count, 10).End(xlUp).Row - 1
arrD = Cells(2, 10).Resize(lngD)
For zz = 1 To lngD
arrD(zz, 1) = Date - DateValue(Left(arrD(zz, 1), 9))
Next zz
Cells(2, 11).Resize(lngD).Value = arrD
End Sub
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige