Hallo.
Ich habe eine Excel-Arbeitsmappe mit mehreren Tabellenblättern. Auf dem Tabellenblatt Erfassung werden Vorgänge erfasst. Einmal im Jahr (Erste Bedingung) sind bestimmte Fälle (2. Bedingung) zu melden. Hierfür habe ich ein zweites Tabellenblatt angelegt, dass den Namen Meldebogen trägt. Nun wollte ich mit Hilfe einer Schleife die relevanten Werte aus dem Tabellenblatt Erfassung auf den Meldebogen kopieren. Leider klappt mein Ansatz jedoch nicht. Vielleicht könnt ihr mir weiterhelfen.
Es scheint an der Abfrage
zuhabern. Mit dem Jahr auslesen aus dem Datum.
Ich habe eine Excel-Arbeitsmappe mit mehreren Tabellenblättern. Auf dem Tabellenblatt Erfassung werden Vorgänge erfasst. Einmal im Jahr (Erste Bedingung) sind bestimmte Fälle (2. Bedingung) zu melden. Hierfür habe ich ein zweites Tabellenblatt angelegt, dass den Namen Meldebogen trägt. Nun wollte ich mit Hilfe einer Schleife die relevanten Werte aus dem Tabellenblatt Erfassung auf den Meldebogen kopieren. Leider klappt mein Ansatz jedoch nicht. Vielleicht könnt ihr mir weiterhelfen.
Code:
Sub Meldebogenerstellen()
Dim i As Integer, j As Integer
Dim AR1 As Integer, AR2 As Integer
'Parameter für den Zielbereich
eZ1 = Worksheets("Optionen").Range("B107").Value 'erste Zeile
lZ1 = Worksheets("Optionen").Range("B108").Value 'letze Zeile
eS1 = Worksheets("Optionen").Range("B96").Value 'erste Spalte
lS1 = Worksheets("Optionen").Range("B102").Value 'letzte Spalte
'Quelldaten
AR1 = Worksheets("Optionen").Range("B75").Value 'erste Zeile der Quelldaten
AR2 = Worksheets("Optionen").Range("B76").Value 'letzte Zeile der Quelldaten
'Jahr; 1. Bedingung Format JJJJ
KJ = Worksheets("Meldebogen").Range("B1").Value
j = eZ1
With Worksheets("Erfassung")
For i = AR1 To AR2
If .Cells(i, 13) = "Meldevorgang" And .Cells(i, 1).xj = KJ Then
.Range("A" & i).Copy
Worksheets("Meldebogen").Range("A" & j).PasteSpecial Paste:=xlPasteValues
.Range("B" & i).Copy
Worksheets("Meldebogen").Range("B" & j).PasteSpecial Paste:=xlPasteValues
j = j + 1
End If
Next i
End With
End Sub
Es scheint an der Abfrage
Code:
If .Cells(i, 13) = "Meldevorgang" And .Cells(i, 1).xj = KJ Then