Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
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
ganze Zeile kopieren
03.01.2022 13:34:51
Sabrina
Hallo zusammen,
Für ein Reporting, werden jeden Tag die Formeln des Vortages kopiert und beim heutigen Datum eingefügt. Momentan geschieht dies manuell. Dafür möchte ich jetzt ein Makro erstellen.
Also, ich möchte in Spalte B das gestrige Datum suchen. Wenn ich das Datum gefunden habe, möchte ich die Zeile von C bis DD kopieren.
Danach suche ich das heutige Datum und füge kopierte Daten ein.
Folgendes habe ich bereits:

Sub AktuellesDatumFinden()
Dim rngArea As Range
'Aktuelles Datum Suchen
Set rngArea = Worksheets("Kontolöschungen").Range("B10:B380").Find(What:=Date, LookIn:=xlValues)
'Wenn Datum gefunden
If Not rngArea Is Nothing Then
'Umsatz (Nebenzelle der Fundzelle) auswählen
rngArea.Offset(0, 1).Select
Else
End If
End Sub
Hier sucht er allerdings nur das heutige Datum und markiert die erste Zelle neben dem Datum.
Kann mir jemand helfen?
Danke & VG

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ganze Zeile kopieren
03.01.2022 13:52:00
migre
Hallo!
Dein Code ergänzt:

Sub AktuellesDatumFinden()
Dim rngYesterday As Range, rngToday As Range
'Aktuelles Datum Suchen
Set rngYesterday = Worksheets("Kontolöschungen").Range("BB10:B380").Find(What:=Date - 1, _
LookIn:=xlValues)
'Wenn Datum gefunden
If Not rngYesterday Is Nothing Then
'Umsatz (Nebenzelle der Fundzelle) auswählen
rngYesterday.Offset(0, 1).Resize(1, 51).Copy
Else
End If
Set rngToday = Worksheets("Kontolöschungen").Range("B10:B380").Find(What:=Date, _
LookIn:=xlValues)
rngToday.Offset(, 1).PasteSpecial xlPasteValuesAndNumberFormats
Application.CutCopyMode = False
End Sub
So?
LG Michael
Anzeige
AW: ganze Zeile kopieren
03.01.2022 13:55:15
Sabrina
Hallo,
ja fast. Er kopiert "gestern" nicht.
Ansonsten funktioniert es.
VG
AW: ganze Zeile kopieren
03.01.2022 14:03:00
migre
Hallo!
ja fast. Er kopiert "gestern" nicht.
Was meinst Du damit? Dass die Zelle mit dem gestrigen Datum nicht mitkopiert wird, sondern nur die Daten rechts davon?
Falls es das ist was Du meinst, dann war das schon in Deinem ursprünglichen Code so, und ich bin daher davon ausgegangen, dass dies so gewünscht ist:

Umsatz (Nebenzelle der Fundzelle) auswählen
rngYesterday.Offset(0, 1).Resize(1, 51).Copy
Wenn die Fundzelle mitkopiert werden soll müsstest Du dies so ändern:

rngYesterday.Resize(1, 52).Copy
LG Michael
Anzeige
AW: ganze Zeile kopieren
03.01.2022 14:08:54
Sabrina
Nein leider meine ich das nicht. Es ist schon richtig, dass ab Spalte C kopiert wird. Wenn aber der Code durch gelaufen ist, erscheinen in dem heutigen Datum keine Werte.
AW: ganze Zeile kopieren
03.01.2022 14:11:14
Sabrina
Wenn ich
Set rngYesterday = Worksheets("Kontolöschungen").Range("B10:B380").Find(What:=Date - 1, _
LookIn:=xlValues)
auf:
Set rngYesterday = Worksheets("Kontolöschungen").Range("B10:B380").Find(What:=Date , _
LookIn:=xlValues)
ändere, dann werden die Daten kopiert.
AW: ganze Zeile kopieren
03.01.2022 14:41:34
migre
Hallo!
Nimm bitte nochmal meinen ersten Code, aber achte darauf, dass bei der Suche nach dem gestrigen Datum auch die Bereichsangabe korrekt ist:

Set rngYesterday = Worksheets("Kontolöschungen").Range("BB10:B380").Find(What:=Date - 1, _
LookIn:=xlValues)
Wie Du oben siehst, dürfte sich hier ein Typo eingeschlichen haben, denn die Range lautet ja eigentlich auf

Set rngYesterday = Worksheets("Kontolöschungen").Range("B10:B380").Find(What:=Date - 1, _
LookIn:=xlValues)
Das sollte eigentlich genau das Ergebnis bringen, das Du wünschst.
LG Michael
Anzeige
AW: ganze Zeile kopieren
03.01.2022 13:57:20
Rudi
Hallo,
ungetestet:

Sub AktuellesDatumFinden()
Dim rngAreaA As Range, rngAreaB As Range
'Aktuelles Datum Suchen
Set rngAreaA = Worksheets("Kontolöschungen").Range("B10:B380").Find(What:=Date - 1, LookIn:=xlValues) 'vortag
Set rngAreaB = Worksheets("Kontolöschungen").Range("B10:B380").Find(What:=Date - 0, LookIn:=xlValues) 'aktuell
'Wenn Datum gefunden
If Not rngAreaA Is Nothing And Not rngAreaB Is Nothing Then
rngAreaA.Offset(0, 1).Resize(, 106).Copy rngAreaB.Offset(, 1)
End If
End Sub
Gruß
Rudi
AW: ganze Zeile kopieren
03.01.2022 13:58:49
Sabrina
Hallo,
leider funktioniert dies nicht, aber trotzdem danke!
Anzeige
dann wird was nicht gefunden. owT
03.01.2022 15:44:10
Rudi

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige