Makro erweitern
22.06.2006 20:57:16
kirsche
ich stehe mal wieder voll auf dem schlauch. vor einiger zeit habe ich mit hilfe ein makro geschrieben. nun möchte ich dieses auf weitere spalten erweitern, aber leider gibt er mir völlig falsche werte wieder. was mache ich nur falsch???
hier mal ein beispiel:
Sub FillFormular(ZielSheetName)
Dim QuellBereich, ZielBereich As Object
Set QuellBereich = Worksheets("Bestellung").Range("A3:L502") 'Range("Datenbank")
Const Zielspalte As Integer = 1
'Const StartZielZeile As Integer = 10
Const iLNr As Integer = 6 'index der Spalte Lieferantennr
Const iANr As Integer = 1 'index der Spalte Artikelnummer
Const iZNr As Integer = 1 'index der Zielspalte
Dim ZielSheet As String
Dim LNr, QuellZeile, ZielZeile As Integer
Set ZielBereich = Worksheets(ZielSheetName).Range("A10:A110")
LNr = Worksheets(ZielSheetName).Range("A4").Value 'hole LNr-Vorgabe
If IsNumeric(LNr) Then
'Zielbereich löschen
With ZielBereich
.Value = ""
End With
ZielZeile = 1
QuellZeile = 3
'gehe über die quelltabelle, bis die Lieferantenspalte keine nummer mehr enthält
Do While IsNumeric(QuellBereich.Cells(QuellZeile, iLNr).Value)
'entspricht die Lieferantennummer der vorgabe?
If (QuellBereich.Cells(QuellZeile, iLNr).Value = LNr) Then
'fülle die nächste zielzeile mit der gefundenen artikelnummer
ZielBereich.Cells(ZielZeile, iZNr).Value = QuellBereich.Cells(QuellZeile, iANr).Value
ZielZeile = ZielZeile + 1
End If
QuellZeile = QuellZeile + 1
Loop
End If
End Sub
diese funktion ermittelt aus einem bestellblatt sämtliche internen artikelnummern für jeweils einen lieferanten. nun möchte ich aber auch die lieferantenartikelnummer in der nächsten spalte wiedergegeben bekommen, leider gibt er mir völlig falsche zahlen wieder, wenn ich diese funktion erweitere. brauche ich dafür eine schleife oder muß ich die funktion für jede spalte neu schreiben? kann mir jemand helfen???
danke kirsche