Fortlaufendes Datum per VBA
#1
Hallo liebe VBA Freunde,

ich habe mal wieder ein Problem und komme nicht weiter.

Ich eine Button kreieren, der Datumangaben ausgibt. 

Wenn z.B. in der Zelle B1 November 2018 steht, soll in der Spalte A  nach dem Klick auf den Button, die Daten vom 01.11.2018 bis zum 30.11.18 stehen.

Wird die Zelle B1 in Dezember 2018 geändert soll in Spalte A (nach Button klick) 01.12.18 bis 31.12.18 stehen usw usw.

das Ganze auf ca. 50 Jahre.

Ich bekomme aber höchsten immer das gleiche Datum hin.

Hat hier jemand eine Idee?

Viele Grüße

Basti.
Top
#2
Zitat:Hat hier jemand eine Idee?
Ja. Zeig mal das, was du bisher erreicht hast in Form einer Beispielmappe. Dann muss man nicht bei Null anfangen.

Zitat:Ich eine Button kreieren
Wirklich?  :63:
Schöne Grüße
Berni
Top
#3
Hi, 

da reicht doch eine einfache Formel:



=wenn(monat($b$1+spalte(a1))<>monat($b$1);"";b$1+spalte(a1))
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Top
#4
Hallo,

eine Formel reicht nicht ganz ... aber es geht alleine mit Formeln ... Sleepy


Angehängte Dateien
.xlsx   test.xlsx (Größe: 10,5 KB / Downloads: 7)
Top
#5
Hi Sabina, 


natürlich reicht da eine Formel.

=wenn(monat($b$1+spalte(a1)-1)<>monat($b$1);"";b$1+spalte(a1)-1)
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Top
#6
Hallo Edgar,

... wenn schon dann doch bitte ZEILE()  :21: 

=WENN(MONAT($B$1+ZEILE(A1)-1)<>MONAT($B$1);"";B$1+ZEILE(A1)-1)

... und es sind 31 Formeln :20: [/klugscheißmodus]
Top
#7
Hallo,

nur weil es mich interessiert hat par VBA

Monat und Jahr steht in B1, Datumsausgabe in Spalte A ab A1

Code:
Sub Test()
Dim loAnzahl As Long, loMonat As Long, i As Long

Columns(1).ClearContents
loMonat = Month(CDate("1." & Left(Trim(Cells(1, 2)), 3) & "." & Right(Trim(Cells(1, 2)), 4)))
Cells(1, 1) = DateSerial(Right(Trim(Cells(1, 2)), 4), loMonat, 1)
loAnzahl = Day(WorksheetFunction.EoMonth(Cells(1, 1), 0))

For i = 2 To loAnzahl
   Cells(i, 1) = Cells(i - 1, 1) + 1
Next i
End Sub


Gruß Werner
Top
#8
Hi Werner,

der Code Funktioniert sogar aber es nur Oktober angezeigt.

Wenn sich B2 aber z.B. in November oder Dezember oder in Januar 2019 usw. ändert 
sollen sich auch die Daten in A ändern.

Wie bekommt man das hin?

VG 

Basti
Top
#9
Doch funzt - B1 war falsch formatiert Smile

Vielen Dank
Top


Gehe zu:


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