Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
464to468
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
464to468
464to468
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

kein Schleifenabbruch bei negativem Suchergebnis

kein Schleifenabbruch bei negativem Suchergebnis
09.08.2004 10:45:25
Marco
Hallo Forumnutzer,
ich hoffe mir kann jemand bei folgendem Problem helfen.
Und zwar möchte ich ein Tabellenbaltt welches mehrere hundert (unsortierte) Datensätze mit Artikelnummern und dazu gehörigen Preien enthält, zeilenweise durchsuchen. Dann einen Wert an der 5 Stelle der aktiven Zeile, mit dem Wert der entsprechenden Artikelnummer aus einem anderen Tabellenblatt vergleichen. Dazu muss also die Artikeln. aus Blatt_1 im Blatt_2 gesucht werden dann der Preis 4 Spalten weiter kopiert werden um schließlich in Blatt_1 in der Zeile der Artikelnummer neben dem bereits bestehenden Preis wieder eingefügt zu werden.
So weit habe ich auch schon alleine hinbekommen, leider bricht das Makro ab, wenn kein entsprechender Wert in Blatt_2 gefunden werden kann. Meine Frage ist also nun, wie ich es schaffen kann, dass das Makro trotz eines fehlenden Suchergebnisses die Schleife bis zum Ende durchläuft und so nur die fehlenden Werte ignoriert.
Ich hänge mal den bereits entstanden Code an. Bin nocht totaler Anfänger, also auch für Tipps im bereits vorhandenen funktionieren Code dankbar.
Vielen Dank für Eure Hilfe,
VG Marco

Sub Fehler1()
Dim artikel As String
Dim i As Integer
For i = 14 To 25
Cells(i, 9).Select
Selection.Copy
artikel = ActiveCell
Sheets("Artikel").Select
Cells.Find(What:=artikel, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate
ActiveCell.Offset(0, 22).Range("A1").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("037-04AE").Select
ActiveCell.Offset(0, 7).Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Next i
End Sub


6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: kein Schleifenabbruch bei negativem Suchergebnis
Boris
Hi Marco,
Grundsatzfrage: Warum per VBA? Das dürfte doch ein klassischer Fall für SVERWEIS oder INDEX ind Kombination mit VERGLEICH sein.
Grüße Boris
AW: kein Schleifenabbruch bei negativem Suchergebnis
09.08.2004 11:10:09
Marco
SVERWEIS funzt nur in geordneten Listen, meines Wissens nach. Hatte ich nämlich auch schon probiert.
VG Marco
AW: kein Schleifenabbruch bei negativem Suchergebnis
Boris
Hi Marco,
SVERWEIS funzt nur in geordneten Listen
Mitnichten.
=SVERWEIS(Suchkriterium;Matrix;Spaltenindex;Bereich_Verweis)
Der letzte Parameter muss 0 (oder FALSCH) sein.
Grüße Boris
AW: kein Schleifenabbruch bei negativem Suchergebnis
Kurt
Und was ist mit den Neffen?
Kurt
AW: kein Schleifenabbruch bei negativem Suchergebnis
09.08.2004 11:34:42
Marco
mmh, da werde ich es nochmal mit SVERWEIS versuchen, bin nat. trotzdem noch an einer VBA Lösung interessiert.
Anzeige
AW: kein Schleifenabbruch bei negativem Suchergebnis
Ulf
Wenn du es gleich von Anfang an richtig lernen willst, informier dich, wie man auf select und activate verzichten kann. Gibts alles hier im Forum.

Sub Fehler1()
Dim artikel As String
Dim i As Integer
For i = 14 To 25
Cells(i, 9).Select
Selection.Copy
artikel = ActiveCell
Sheets("Artikel").Select
On error resume next
Cells.Find(What:=artikel, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate
ActiveCell.Offset(0, 22).Range("A1").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("037-04AE").Select
ActiveCell.Offset(0, 7).Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Next i
End Sub

Ulf
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige