|  
                                             Liebe VBA Profis. 
Ich habe ein Probelm mit einer Schleife. Ich würde gerne gerne alle Zeilen mit einem definierten Spalteninhalt in ein neues Tabellenblatt kopieren. Mit dem Kriterium "KW" habe ich das auch schon hinbekommen. Das sieht wie folgt aus: 
Dim Zeile As Long 
Dim ZeileMax As Long 
Dim n As Long 
Dim KW As Variant 
Dim kwstart As Variant 
kwstart = InputBox("Bitte gewünschte KW eingeben") 
Worksheets("BerichtMonat").Range("b6") = kwstart 
 
KW = Worksheets("BerichtMonat").Range("b6").Value 
Sheets("BerichtMonat").Select 
With Worksheets("BerichtMonat") 
.Range("a8:z5000").ClearContents 
Range("a1:z5000").Interior.Color = vbWhite 
Range("a1:z5000").Borders.LineStyle = -4142 
End With 
With Worksheets("Dienst") 
With Worksheets("BerichtMonat").Range("A9:a9") 
 .Value = "Dienst" 
 .Font.Size = 13 
 .Font.Bold = True 
End With 
 
ZeileMax = .UsedRange.Rows.Count 
n = 10 
For Zeile = 2 To ZeileMax 
If .Cells(Zeile, 3).Value = KW Then 
 
.Range("a" & Zeile, "g" & Zeile).Copy Destination:=Tabelle6.Rows(n) 
n = n + 1 
End If 
Next Zeile 
Jetz würde ich geren eine zweite Abfrage machen aber diesmal nicht mit KW sonder mit dem Monat. Ich möchte bei der Abfrage (InputBox) den Monatsnamen eingeben und dieser soll dann in der If Schleife genau wie die Abfrage mit "KW" lediglich die Zeilen finden, die ein Datum innerhalb des abgefragten Monats haben. Ich wollte dies mit monthname machen. Also schematisch so: 
if monthname = KW then (kw währe halt die Variable aus der InputBox) 
Ich weis allerdings nicht, wie ich die If abfrage mit monthname korrekt schreiben muss. Bei KW war es ja: 
If .Cells(Zeile, 3).Value = KW Then 
Das Datum würde in meinem Beispiel lediglich hier stehen: (Zeile, 1) 
Vielen Dank für eure Hilfe. 
Martin 
  
 
  
     |