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

VBA Zeilen verschieben nach Monat

VBA Zeilen verschieben nach Monat
01.03.2024 08:14:22
Nadine
Hallo zusammen,

ich habe eine fortlaufende Tabelle, die täglich mit Daten befüllt wird.
Als Beispiel habe ich ein Makro gebaut, dass alle "erledigte Vorgänge" in das vorgeschriebene neue Arbeitsblatt verschiebt. Nun ist die Anforderung, dass nur die erledigten verschoben werden am Monatsende bzw. am 1. Tag des neuen Monats (1. Arbeitstag im neuen Monat).
Leider hab ich eine Blockade wie ich das nun separat noch mit einbaue.
In der Beispieldatei soll das Datum in Spalte H dass Datum sein, was relevant für die Monatsberechnung ist.

Ich hoffe ihr könnt mir helfen.

Lieben Dank.
Nadine

https://www.herber.de/bbs/user/167440.xlsm

17
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Zeilen verschieben nach Monat
01.03.2024 08:57:57
WolfiSued
Hallo Nadine,

die wesentlich einfachere Variante wäre es, das ganze über PowerQuery zu lösen. Sprich über Excel --> Daten --> Daten abrufen --> ....

Viele Grüße
Wolfgang
AW: VBA Zeilen verschieben nach Monat
01.03.2024 12:12:36
Herbert Grom
Hallo Nadine,

da es das Sheet "Beispiel TÜL" nicht gibt, nehme ich mal an, dass du das Sheet "Beispiel" meinst, richtig?

Servus
AW: VBA Zeilen verschieben nach Monat
04.03.2024 07:07:59
Nadine
Hallo,

ja, sorry hatte den Reiter im Nachhinein noch angepasst. Aber Reiter heißt "Beispiel TÜL".

Danke dir
AW: VBA Zeilen verschieben nach Monat
04.03.2024 10:49:49
Herbert Grom
Hallo Nadine,

dann teste mal das:

https://www.herber.de/bbs/user/167501.xlsm

Servus
Anzeige
AW: VBA Zeilen verschieben nach Monat
04.03.2024 14:00:08
Nadine
Hallo Herbert,

vielen Dank. Ginge es aber auch, dass es automatisch beim Öffnen sich verschiebt und dann auch nur die erledigten vom Vormonat?
Quasi das die erledigten von dem jeweiligen aktuellen Monat noch in der Liste bleiben und alle anderen die VOR dem aktuellen Monat sind, verschoben werden?

Danke dir
AW: VBA Zeilen verschieben nach Monat
04.03.2024 15:18:48
Herbert Grom
Es sind 3 Spalten mit Monatsangaben vorhanden, nach welcher soll geprüft werden?
AW: VBA Zeilen verschieben nach Monat
04.03.2024 15:24:12
Herbert Grom
Ach so, ich habe noch eine Sortierung hinzugefügt, nach Spalte H. Ist das ok, oder soll nach einer anderen Spalte sortiert werden. Auf die Sortierung bin ich deshalb gekommen, weil ich mit "erledigt"en in den Zeilen weiter oben getestet habe. Falls das nicht vorkommen kann, kann ich die Sortierung auch weglassen.
Anzeige
AW: VBA Zeilen verschieben nach Monat
05.03.2024 11:40:48
Nadine
Hallo Herbert,

es soll nach Spalte H "Vorlagetermin/Fälligkeit" gefiltert werden bzw. ist da der Monat des jeweiligen Datums für das Verschieben zu betrachten.
Das Filtern in Spalte H ist nicht so schlimm und kann gerne beibehalten werden.

Ich bedanke mich.

Nadine
AW: VBA Zeilen verschieben nach Monat
06.03.2024 06:13:14
Nadine
Hallo Herbert,

super vielen Dank. Genauso wollte ich es haben. Ich danke dir vielmals.

Wünsche noch einen schönen Tag.

Nadine
Anzeige
AW: Bitte sehr, gerne geschehen & danke f.d. Rückmeldung.owt
06.03.2024 09:13:49
Herbert Grom
,,,
AW: VBA Zeilen verschieben nach Monat
01.03.2024 09:20:16
Nadine
Hallo Wolfgang,

aber bei PowerQuery muss doch eine Datenbasis abgerufen werden? Ich glaube meine Frage war etwas falsch formuliert.
Die Exceltabelle wird manuell täglich mehrmals befüllt (zb. bei Eingang einer Mail, wird die Info in die Excel eingetragen). Das Datum in Spalte H ist das Fälligkeitsdatum, um den Auftrag in der Mail fristgerecht abzuarbeiten.
Wenn es bearbeitet wurde, wird es als erledigt in der Mail markiert und soll dann monatlich einfach in den nächsten Reiter "erledigte Vorgänge" verschoben werden.
Sodass man zb jetzt im März die erledigten Aufträge von März noch drin hat und ab dem 01.04. oder dem 1. Arbeitstag im April diese dann verschoben werden.

Dankeschön
Nadine
Anzeige
AW: VBA Zeilen verschieben nach Monat
01.03.2024 10:01:31
WolfiSued
Die Exceldatei wird vermutlich gespeichert. Damit hast du ja die Datenbasis.
AW: VBA Zeilen verschieben nach Monat
01.03.2024 10:33:10
Nadine
Hallo Wolfgang,

entschuldige, dann verstehe ich nicht wie ich das im PowerQuery bauen soll, dass er monatlich die erledigten in das andere Tabellenblatt verschiebt.
Ich dachte mit einer Makrozeile mehr wäre es getan.

Somit bräuchte ich dann doch etwas mehr Infos und Hilfe, wie man das über PowerQuery baut.

Nadine
AW: VBA Zeilen verschieben nach Monat
01.03.2024 11:17:36
WolfiSued
Hallo Nadine,

eine entsprechende Datei mit den jeweiligen Zuständen wäre hilfreich.

In Power Query lädt man die Rohdaten. Diese können dann in Power Query manipuliert, gefiltert, berechnet, ... und dann das Ergebnis wieder als Tabelle in ein Excel-Tabellenblatt geladen werden. Dieser Vorgang kann auf die gleichen Rohdaten beliebig oft wiederholt werden. Somit können beliebig viele Tabellen mit verschiedenem Aussehen und Inhalten ausgegeben werden. Sogar Beziehungen mit anderen Datenquellen können realisiert werden.



Viele Grüße
Wolfgang
Anzeige
AW: VBA Zeilen verschieben nach Monat
01.03.2024 11:31:38
Nadine
Hallo Wolfgang,

die Datei war in meiner Hauptnachricht ganz unten enthalten.

So ganz kann ich dir nicht folgen. Da die Zeilen ja nur von Reiter A in Reiter B verschoben werden sollen. PowerQuery nutze ich meistens nur mit Zusammenspiel mit Access Datenbanken, aber hier geht es ja nur um Copy & Paste, wenn der Monat vorbei ist.

Danke dir.
Nadine
AW: VBA Zeilen verschieben nach Monat
01.03.2024 11:35:49
Nadine
Hallo nochmal,

ich dachte, dass man einfach 2 Zeilen hier ergänzt und abfragt, wenn Datum in Spalte H kleiner ist als Datum / Monat von heute, dann kopiere alles was "erledigt" ist in Reiter "erledigte Vorgänge".

Code:
Option Explicit
Private Sub Auto_open()
Call Modul1.verschieben

End Sub

Sub verschieben()
Dim lz As Long
Dim Variable As String

lz = Worksheets("erledigte Vorgänge").Cells(Rows.Count, 1).End(xlUp).Row + 1
Variable = ["Beispiel TÜL"]

On Error Resume Next
With Sheets(Variable).Range("A3").CurrentRegion
.AutoFilter Field:=9, Criteria1:="erledigt"
.Offset(2, 0).SpecialCells(xlCellTypeVisible).Copy
Worksheets("erledigte Vorgänge").Range("A" & lz).PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
Application.DisplayAlerts = False
.Offset(2, 0).Resize(.Rows.Count - 1).SpecialCells(xlCellTypeVisible).Delete
.AutoFilter.ShowAllData
Sheets(Variable).Select
Rows("2:2").Select
Selection.AutoFilter
End With

Application.DisplayAlerts = True
End Sub

Hier brauche ich quasi die Hilfe.

Vielen Dank.

Nadine
https://www.herber.de/bbs/user/167440.xlsm
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige