Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
24.04.2024 17:19:09
Anzeige
Archiv - Navigation
1468to1472
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

Datumsliste für bestimmten Zeitraum erstellen

Datumsliste für bestimmten Zeitraum erstellen
13.01.2016 19:33:10
Reimund
Hallo,
ich hätte gerne eine Tabelle, die automatisch mit VBA erstellt wird.
Und zwar eine Spalte in der alle Monatsenddaten für einen Zeitraum
zum Beispiel von 2012 bis 2013 erstellt werden.
Das Gleiche daneben für alle Sonntagsdaten.
Gestartet werden soll bei Änderung des Zeitraumes.
Vielen Dank
Reimund
Muster anbei
https://www.herber.de/bbs/user/102760.xlsx

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datumsliste für bestimmten Zeitraum erstellen
13.01.2016 19:58:06
Sepp
Hallo Reimund,
in das Modul der Tabelle.
' **********************************************************************
' Modul: Tabelle1 Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim varMonth() As Variant, varDay() As Variant
Dim lngStart As Long, lngEnd As Long, lngI As Long, lngN As Long, LngC

On Error GoTo Errorhandler

Application.EnableEvents = False

If Not Intersect(Target, Range("A2:A3")) Is Nothing Then
  If IsNumeric(Range("A2")) And IsNumeric(Range("A3")) Then
    lngStart = Application.Min(Range("A2:A3"))
    lngEnd = Application.Max(Range("A2:A3"))
    
    Redim varMonth(1 To (lngEnd - lngStart + 1) * 12, 1 To 1)
    Redim varDay(1 To UBound(varMonth, 1) * 53, 1 To 1)
    
    For lngI = 1 To UBound(varMonth)
      varMonth(lngI, 1) = DateSerial(lngStart, lngI + 1, 0)
      For lngN = 1 To Day(DateSerial(lngStart, lngI + 1, 0))
        If Weekday(DateSerial(lngStart, lngI, lngN), vbSunday) = 1 Then
          LngC = LngC + 1
          varDay(LngC, 1) = DateSerial(lngStart, lngI, lngN)
        End If
      Next
    Next
    
    Range("B2:C" & Me.Rows.Count) = ""
    Range("B2").Resize(UBound(varDay, 1), 1) = varDay
    Range("C2").Resize(UBound(varMonth, 1), 1) = varMonth
  End If
End If

Errorhandler:
Application.EnableEvents = True
End Sub

Gruß Sepp

Anzeige
AW: Datumsliste für bestimmten Zeitraum erstellen
13.01.2016 20:41:24
Reimund
Sepp YOU ARE THE GREATEST.
ging ja fix. Ich hatte mich daran den ganzen Tag versucht, aber null.
Scheint so zu sein, wie ich es wollte.
Vielen Dank
Reimund
Userbild

AW: Datumsliste für bestimmten Zeitraum erstellen
14.01.2016 16:17:45
Reimund
Hallo Sepp,
Deine Lösung weckt neue Begierlichkeiten.
Wäre es möglich aus einem 2. Tabellenblatt Daten für die Bereiche zu summieren?:
In „Liste“ werden fast jeden Tag eine oder mehrere Zeilen ergänzt.
Nun hätte ich gerne, dass aus einigen Spalten immer die Summe des Intervalls (Monat, Woche) gebildet wird.
Es sind das : „Stück neu“, „AT Mehrzeit“ und Anzahl von Neu in „Pr-Aktion“.
Und um es schlimm zumachen, die 10 häufigsten Ausdrücke in „Fehler1“ und „Fehler2“.
Wie das so ist, gib´ jemanden den Finger, und er nimmt die ganze Hand.
Viele Grüße
Reimund
https://www.herber.de/bbs/user/102780.xlsm

Anzeige
AW: Datumsliste für bestimmten Zeitraum erstellen
14.01.2016 17:14:59
Sepp
Hallo Reimund,
die Summen sind kein Problem,
Tabelle1

 ABCDE
1IntervallWocheAT MehrzeitStück NeuPR-Aktion
2201504.01.1549494
3201611.01.1518224
4 18.01.152031
5 25.01.15031
6 01.02.151172
7 08.02.1512103
8 15.02.15582
9 22.02.15551

Formeln der Tabelle
ZelleFormel
C2=SUMMENPRODUKT((Liste[Datum]>=$B2)*(Liste[Datum]<=$B2+6)*Liste[AT
Mehrzeit])
D2=SUMMENPRODUKT((Liste[Datum]>=$B2)*(Liste[Datum]<=$B2+6)*Liste[Stück
Neu])
E2=SUMMENPRODUKT((Liste[Datum]>=$B2)*(Liste[Datum]<=$B2+6)*(Liste[PR-Aktion]="Neu"))


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
Für die 10 häufigsten Fehler habe ich im Moment keine Idee.
Gruß Sepp

Anzeige
AW: Datumsliste für bestimmten Zeitraum erstellen
14.01.2016 18:41:03
Reimund
Danke Sepp
leider kommt bei mir immer in C2 der Text ?
Und dann bitte auch noch so´ne Formel für die Monate.
Danke
Reimund
https://www.herber.de/bbs/user/102784.xlsm

AW: Datumsliste für bestimmten Zeitraum erstellen
14.01.2016 18:59:45
Sepp
Hallo Reimund,
also die Formeln funktionieren! Außer in C2, da hast du ein Leerzeichen vor dem '='.
Und die Formel für den Monat hättest du bestimmt selber hinbekommen.
=SUMMENPRODUKT((MONAT(Liste[Datum])=MONAT($B2))*(JAHR(Liste[Datum])=JAHR($B2))*Liste[AT
Mehrzeit])
Gruß Sepp

Anzeige
AW: Datumsliste für bestimmten Zeitraum erstellen
14.01.2016 19:35:11
Reimund
Nun ja, Sepp
das mit dem Leerzeichen hatte ich auch bemerkt. Hatte es gelöscht- aber wohl doch nicht richtig.
Und mit dem Monat hast Du ja recht, Hätte ich wohl auch hingebogen.
Aber die weist ja, wenn man jemanden kennt, der....
Nochmals vielen Dank
Falls es noch einen Geistesblitz für die 10er Verteilung gibt, lass es mich wissen.
Ich möchte Dich nicht beleidigen, aber würde mich gerne für die tollen Hilfen etwas erkenntlich zeigen.`ne Buddel Whisky/Cognac oder was anderes.
Grüße
Reimund

AW: Datumsliste für bestimmten Zeitraum erstellen
14.01.2016 20:43:49
Sepp
Hallo Reimund,
danke für das Angebot, ein guter Schluck Whisky ab und an, ist schon was Feines, aber spende ggf. das Geld lieber der Kinderkrebshilfe!
Bis dann,
Gruß Sepp

Anzeige

85 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige