Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1860to1864
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

Wochentage+ Monatsenden einfügen

Wochentage+ Monatsenden einfügen
06.12.2021 13:43:03
Ugur
Guten Tag liebe Community,
In der angefügten Datei:
https://www.herber.de/bbs/user/149616.xlsm
sollen die Werte mit einer ähnlichen, älteren Datei miteinander verglichen werden. Das Problem ist, dass zwischen dem alten und neuen Abzug das Datum unterschiedlich sein kann. Daher brauche ich ein Makro, das Zeilen in die Datei einfügt, in denen folgende Daten stehen sollen:
die kommenden zwei Wochen vom aktuellen Tag. Alle Freitage innerhalb der nächsten drei Monate inklusive der Monatsenden.
In diese Leeren Zeilen sollen dann die Werte übernommen werden, die sich in der vorherigen Zeile befinden.
Meine Vorgängerin hatte bereits eines begonnen, dies funktioniert bei mir jedoch irgendwie nicht, daher kann ich auch nicht wirklich sagen, ob das so funktioniert wie gewünscht oder ein völlig neuer Ansatz vonnöten ist.

Sub Zeileneinfügen_2()
' Makro1 Makro
Dim lastrow As Integer
Dim Wochentag
Dim Wochentag2
Dim Datum As Date
lastrow = Cells(Rows.Count, 3).End(xlUp).Row
For Zeile = 2 To lastrow
For x = 1 To 10
Wochentag = Weekday(Cells(Zeile, 33))
Datum = Cells(Zeile, 33).Value
'        If Wochentag  6 Then
If Cells(Zeile + 1, 33).Value - Cells(Zeile, 33).Value > 1 And Cells(Zeile, 34).Value - Cells(Zeile + 1, 34).Value  0 Then   'wenn Abstand zwischen zwei Daten mehr als 1 Tage
Rows(Zeile + 1).Insert
Cells(Zeile + 1, 33) = "=WORKDAY(R[-1]C,5,2)" 'Wochentag einfügen -> immer den Freitag + letzten Tag im Monat
Range(Cells(Zeile, 1), Cells(Zeile, 24)).Select 'A-X kopieren & einfügen
Selection.Copy
Cells(Zeile + 1, 1).PasteSpecial
Application.CutCopyMode = False
Cells(Zeile, 34).Select 'AH kopieren & einfügen
Selection.Copy
Cells(Zeile + 1, 34) = "0"
Application.CutCopyMode = False
Cells(Zeile, 35).Select 'AI kopieren & einfügen
Selection.Copy
Cells(Zeile + 1, 35).PasteSpecial
Application.CutCopyMode = False
Cells(Zeile, 36).Select 'AJ kopieren & einfügen
Selection.Copy
Cells(Zeile + 1, 36) = "0"
Range(Cells(Zeile, 37), Cells(Zeile, 45)).Select 'AK-AS kopieren & einfügen
Selection.Copy
Cells(Zeile + 1, 37).PasteSpecial
Application.CutCopyMode = False
End If
Zeile = Zeile + 1
'Wenn 10 Zeilen pro Sachnummer eingefügt, dann nächste Sachnummer suchen und erst ab dieser wieder Zeilen einfügen
If x = 10 Then
Do
Zeile = Zeile + 1
If Cells(Zeile, 1)  Cells(Zeile - 1, 1) Then
Exit Do
End If
Loop
Zeile = Zeile - 1
OpenForms = DoEvents
End If
Next x
Next Zeile
'Call Abrufe
'Call offene_Menge
End Sub
Ich selbst habe auch ein Makro in Arbeit. Allerdings fügt dieses bisher jedes fehlende Datum ein, ohne das o.g Kriterium. Dies würde die Datei zu sehr vergrößern.
ich hoffe ich konnte es einigermaßen verständlich erklären und danke im voraus :)

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Wochentage+ Monatsenden einfügen
06.12.2021 18:53:01
ChrisL
Hi
Ich empfehle die Datei noch einmal neu aufzubereiten, vielleicht wird es dann klarer und womöglich kann man auch gleich noch den Abgleich der beiden Dateien integrieren.
Tabelle1 = Quelldaten Datei 1
Tabelle2 = Quelldaten Datei 2
Tabelle3 = Wunschergebnis
Ich glaube folgendes verstanden zu haben:
- Die "Aufgabe" soll je "Verkaufsb." einmal erledigt werden. Material ist irrelevant.
- Der Vergleich (z.B. zum Verlauf des Vorjahres) kann knifflig sein, wenn es keine eindeutige Vergleichsmöglichkeit gibt (z.B. verschobene Wochentage oder fehlende Werte infolge Feiertage). Oft verwendet man darum einen Vergleichszeitraum z.B. Kalenderwochen, Monate, Quartale etc.
Was ich nicht verstehe:
- Woher sollen die Feiertage herkommen. Wie sollen dir die Monatsenden helfen.
- Wie soll dir die Berechnung Datum+14Tage weiterhelfen. In 14 Tagen fehlt der Datumswert vielleicht genauso, wenn der Rhythmus unterschiedlich ist.
- Ich glaube zu verstehen, dass du eine 14-Tage-Datumsreihe erzeugen willst. Fehlende Werte werden von oben "aufgefüllt". Aber damit erzeugst du unter Umständen eine zusätzliche "Transaktion" d.h. der Saldo stimmt womöglich nicht mehr.
Ein Detail am Rande. Ein SVERWEIS() mit Spalten-Index 1 entspricht eher einem VERGLEICH(). Wenn zusätzlich das Suchkriterium und die Matrix in der gleichen Spalte sind, dann wird der Vergleich immer ein WAHR bzw. der SVERWEIS() immer das Suchkriterium zurück geben.
cu
Chris
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige