Registriert seit: 09.05.2015
Version(en): 2013, Office 365
Hallo liebes Forum,
bräuchte mal wieder Euren kompetenten Rat.
In einer Tabelle stehen in Spalte "A" ab "A2" Datumswerte, im Moment steht das letzte Datum in "A948".
Ich müsste aber für die Berechnung eines Zeitraumes in Jahren, Monaten und Tagen eine flexible Formel dafür haben wenn weitere Datumseinträge (Zeilen) hinzugefügt werden.
Diese Formel steht jetzt in "A1000"
=DATEDIF(A2;A948;"y")& " Jahr(e), "& DATEDIF(A3;A948;"ym")& " Monat(e), "& DATEDIF(A2;A948;"MD") & " Tag(e)"
Wie müsste die Formel aussehen damit sie sich flexibel an hinzugefügte Zeilen mit neuen Datumseinträgen anpasst, ohne dass ich immer händisch den Zellbezug in der Formel ändern müsste?
Danke schon mal für eine Rückmeldung.
Registriert seit: 10.04.2014
Version(en): Microsoft 365, mtl. Kanal
Hi Erich,
formatiere deine Tabelle in eine intelligente Tabelle um (SGTRG-L oder -T); dann erweitern sich deine Formeln automatisch.
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Registriert seit: 09.05.2015
Version(en): 2013, Office 365
Hallo Günter,
danke für die Antwort.
Wenn ich das mache verliere ich alle meine Farbformate die ich für diverse Auswertungen benötige.
Gruß Erich
Registriert seit: 23.07.2019
Version(en): 2016
Hallo,
Zitat:Diese Formel steht jetzt in "A1000"
=DATEDIF(A2;A948;"y")& " Jahr(e), "& DATEDIF(A3;A948;"ym")& " Monat(e), "& DATEDIF(A2;A948;"MD") & " Tag(e)"
Wie müsste die Formel aussehen damit sie sich flexibel an hinzugefügte Zeilen mit neuen Datumseinträgen anpasst, ohne dass ich immer händisch den Zellbezug in der Formel ändern müsste?
Würde mir eine Spalte mit folgendem Code erstellen und dann entsprechend nur noch runterziehen wenn ein neues Datum dazu kommt.
Code:
=DATEDIF($A2$;A948;"y")& " Jahr(e), "& DATEDIF($A3$;A948;"ym")& " Monat(e), "& DATEDIF($A2$;A948;"MD") & " Tag(e)"
Gruß
Stoffo
Registriert seit: 09.05.2015
Version(en): 2013, Office 365
Hallo Stoffo,
danke für den Vorschlag.
Ich möchte aber nur "eine" Ergebnis-(stelle) -zeile in der die Berechnung steht und zwar immer unter dem letzten Datumseintrag.
Registriert seit: 23.07.2019
Version(en): 2016
Hm. Dann ggf. eine Range definieren die über die aktuelle Zelle hinausgeht und das Ergebnis an anderer Stelle auswerfen.
Oder du lässt dir den letzten Eintrag deiner Liste gesondert auswerfen und machst dann eine Berechnung, Beispiel findest du hier:
Finde den letzten Eintrag einer Excel-Liste
Gruß
Stoffo
Registriert seit: 10.04.2014
Version(en): Microsoft 365, mtl. Kanal
Hi Erich,
wäre das noch eine Möglichkeit?
Arbeitsblatt mit dem Namen 'Tabelle2' |
| A | B | C | D | E |
1 | Datum | Text1 | Text2 | 19.05.2019 | 0 Jahr(e), 0 Monat(e), 18 Tag(e) |
2 | 01.05.2019 | blabb | blabla | | |
3 | 02.05.2019 | blebb | bleble | | |
4 | 03.05.2019 | blibb | blibli | | |
5 | 04.05.2019 | blobb | bloblo | | |
6 | 05.05.2019 | blupp | bluplu | | |
7 | 06.05.2019 | blabb | blabla | | |
8 | 07.05.2019 | blebb | bleble | | |
9 | 08.05.2019 | blibb | blibli | | |
10 | 09.05.2019 | blobb | bloblo | | |
11 | 10.05.2019 | blupp | bluplu | | |
12 | 11.05.2019 | blabb | blabla | | |
13 | 12.05.2019 | blebb | bleble | | |
14 | 13.05.2019 | blibb | blibli | | |
15 | 14.05.2019 | blobb | bloblo | | |
16 | 15.05.2019 | blupp | bluplu | | |
17 | 16.05.2019 | blabb | blabla | | |
18 | 17.05.2019 | blebb | bleble | | |
19 | 18.05.2019 | blibb | blibli | | |
20 | 19.05.2019 | blobb | bloblo | | |
Zelle | Formel |
D1 | =VERWEIS(2;1/($A$2:$A$1500<>"");$A$2:$A$1500) |
E1 | =DATEDIF(A2;$D$1;"y")& " Jahr(e), "& DATEDIF(A3;$D$1;"ym")& " Monat(e), "& DATEDIF(A2;$D$1;"MD") & " Tag(e)" |
Verwendete Systemkomponenten: [Windows (32-bit) NT 10.00] MS Excel 2016 |
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg |
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Registriert seit: 09.05.2015
Version(en): 2013, Office 365
Danke Euch Beiden,
ich habe es jetzt mit einem Makro versucht.
Code:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim sAdr As String
'Das ist der Bereich wo ich die ausgewerteten Daten ausgebe
sAdr = Range("Zeitspanne").Address
If Target.Column = 1 And Not Target.Address = sAdr Then
loDat = Target
'Hier steht das zuletzt eingegebene Datum
Range("V1") = Target
End If
End Sub