Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Kopier code verbessern
#1
Hallo,
ich würde gerne eine Bereich prüfen ob Datum vorhanden, wenn ja dann den Bereich von bis kopieren und in eine andere Tabelle einfügen,
Prüfbereich wäre Tagesblatt J3:J35
kopieren nach Verzehr_Jahresübersicht ab a2:As2
Ein makro hab ich mit dem Recorder aufgezeichnet kopiert zwar alles hinterlässt aber nach kopieren lücken.
für eine hilfe wäre ich dankbar

Excel 2016

Gruß Jürgen


.xlsm   Testmappe.xlsm (Größe: 1,05 MB / Downloads: 6)
Zitieren
#2
Hallo Jürgen,
anbei eine korrigierte Fassung. Das zeilenweise Kopieren ist nicht optimal, aber zunächst besser nachvollziehbar.
Der Code lautet
Option Explicit 'ist wichtig, entdeckt Schreibfehler
Sub Übertragen()
'
' Übertragen Makro
Dim LastRow As Long, Aktrow As Long
  Application.ScreenUpdating = False 'um Bildschirmflackern zu vermeiden
    LastRow = Sheets("Verzehr_Jahresübersicht").Cells(Rows.Count, 1).End(xlUp).Row + 1
    'erste freie Zeile in Verzehr_Jahresübersicht
    'aus Tagesblatt oberer Bereich Kopieren
    Aktrow = 3
    While IsDate(Cells(Aktrow, 10)) 'solange J mit Datum belegt
      Cells(Aktrow, 10).Resize(, 36).Copy
      Sheets("Verzehr_Jahresübersicht").Cells(LastRow, 1).PasteSpecial Paste:=xlPasteValues
      LastRow = LastRow + 1
      Aktrow = Aktrow + 1
    Wend
    'Tagesblatt unterer Bereich Kopieren
    Aktrow = 22
    While IsDate(Cells(Aktrow, 10)) 'solange J mit Datum belegt
      Cells(Aktrow, 10).Resize(, 36).Copy
      Sheets("Verzehr_Jahresübersicht").Cells(LastRow, 1).PasteSpecial Paste:=xlPasteValues
      LastRow = LastRow + 1
      Aktrow = Aktrow + 1
    Wend
        ' Kopieren beenden
    Application.CutCopyMode = False
   
    ' Hilfsfunktion wir wieder gelöscht
   
    Sheets("Tagesblatt").Select

    Range("b1").Value = Range("b1").Value + 1
    Range("K3:AP20,K22:AP35,AR3:AS20,AR22:AS35").Select
    Range("AR22").Activate
    Application.CutCopyMode = False
    Selection.ClearContents
    Range("K3").Select
  Application.ScreenUpdating = True 'wieder einschalten
End Sub
Gruß der AlteDresdner (Win11, Off2021)
Zitieren
#3
Vielen Dank
an AlteDresdner.

Pefekt
Zitieren
#4
Aber  gerne doch. Danke für Rückmeldung, ist selten geworden.
Gruß der AlteDresdner (Win11, Off2021)
Zitieren


Gehe zu:


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




Hinweis auf Angebot Excel-Inside - lang    Keine Lösung gefunden? Du kannst Dich gerne an unser erfahrenes Experten-Team wenden um dein Anliegen zu besprechen.
   Gerne erstellen wir auf dieser Basis ein Angebot.
   Sende deine Anfrage einfach
per E-Mail an anfrage@excel-inside.de


Powerd and supported by Excel-InsideSolutions