10.10.2019, 17:18
Moin zusammen,
ich habe vor Ewigkeiten mal an einer Bestandsliste gefummelt und ihr habt mir dabei schon geholfen. Jetzt bekomme ich, nach einem Jahr, das Problem, das wir von einigen Modellen keine Rahmengrößen mehr besitzen. Laut VBA sucht er so lange, bis das Feld der Seriennummer frei ist. Das wird zum Verhängnis, da er es dann beim der anderen und vorallem falschen Rahmengröße einträgt.
Wie kann man den Code so umschreiben, dass er bei fehlenden Kriterien einfach eine Meldung bringt das nichts mehr davon da ist? Ich weiß das man in der Do Until Zeile etwas verändern muss, aber mein VBA wissen ist gerade so super beschränkt.
Über eure Hilfe würde ich mich sehr freuen und bedanke mich im Voraus bei euch!
ich habe vor Ewigkeiten mal an einer Bestandsliste gefummelt und ihr habt mir dabei schon geholfen. Jetzt bekomme ich, nach einem Jahr, das Problem, das wir von einigen Modellen keine Rahmengrößen mehr besitzen. Laut VBA sucht er so lange, bis das Feld der Seriennummer frei ist. Das wird zum Verhängnis, da er es dann beim der anderen und vorallem falschen Rahmengröße einträgt.
Wie kann man den Code so umschreiben, dass er bei fehlenden Kriterien einfach eine Meldung bringt das nichts mehr davon da ist? Ich weiß das man in der Do Until Zeile etwas verändern muss, aber mein VBA wissen ist gerade so super beschränkt.
Über eure Hilfe würde ich mich sehr freuen und bedanke mich im Voraus bei euch!
Code:
Private Sub MkListFilter1(ByVal Md As String, ByVal FS As String, _
ByVal FrmNbr As Variant, ByVal SysNbr As Variant, ByVal State As String, ByVal Booking As String)
Dim Rw As Range
With Sheets("Lagerbestand")
With .ListObjects(1)
.AutoFilter.ShowAllData
With .Range
.AutoFilter Field:=2, Criteria1:=Md
.AutoFilter Field:=3, Criteria1:=FS
.AutoFilter Field:=4, Criteria1:="storing"
End With
Set Rw = .DataBodyRange.SpecialCells(xlCellTypeVisible).Rows(1)
Do Until Rw.Cells(8) = "" And Rw.Cells(7) = ""
Set Rw = Rw.Offset(1)
Loop
Rw.Cells(8).Value = SysNbr
Rw.Cells(7).Value = FrmNbr
Rw.Cells(4).Value = State
Rw.Cells(18).Value = Booking
.AutoFilter.ShowAllData
End With
End With
End Sub