Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

nach 3 verschied. Werten suchen u. kopieren

Forumthread: nach 3 verschied. Werten suchen u. kopieren

nach 3 verschied. Werten suchen u. kopieren
30.01.2004 12:52:48
Regina
Hallo VBAler,
ich muss in der TabelleA nach 3 verschiedenen Werten in der Spalte G suchen(598000,598100,598200)
und dann die jeweiligen Zeilen nach TabelleB kopieren, und in TabelleA löschen.
Mit dem Befehl find. kann ich núr nach einem Wert suchen.
Kennt jemand hierfür eine Lösung.
Gruß REgina
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: nach 3 verschied. Werten suchen u. kopieren
30.01.2004 14:12:13
Dirk
Hallo!
Ne eigene Schleife basteln:
For i=1 to Cells(Rows.Count, 7).End(xlUp).Row
If cells(i,7).value =598000 OR cells(i,7).value=598100 OR cells(i,7).value=598200 then
Deine Kopier-/Lösch-Routine
end if
next i
Cheers
AW: noch offen
30.01.2004 14:16:46
Regina
Hallo Dirk,
Ist nur das Problem, das in der Spalte G eine lange Zahlenreihe steht, aus der der Wert herausgefischt werden soll.
Da greift If nicht, da noch andere Zahlen drin stehen an xbeliebiger Stelle.
Wie dann das????????
Gruß Regina
Anzeige
AW: noch offen
30.01.2004 16:35:33
Nepumuk
Hallo Regina,
so zum Beispiel:

Option Explicit
Public Sub Regina()
Dim lngZeile As Long
With Worksheets("Tabelle1")
For lngZeile = .Cells(65536, 7).End(xlUp).Row To 1 Step -1
If InStr(1, CStr(.Cells(lngZeile, 7)), "598000") <> 0 _
Or InStr(1, CStr(.Cells(lngZeile, 7)), "598100") <> 0 _
Or InStr(1, CStr(.Cells(lngZeile, 7)), "598200") <> 0 Then
With .Rows(lngZeile)
.Copy Worksheets("Tabelle2").Rows(Worksheets("Tabelle2").Cells(65536, 7).End(xlUp).Row + 1)
.Delete Shift:=xlShiftUp
End With
End If
Next
End With
End Sub


Code eingefügt mit: Excel Code Jeanie
Gruß
Nepumuk
Anzeige
AW: Danke bitte erklären
30.01.2004 17:34:41
Regina
Hallo Nepumuk,
klappt prima! Vielen Dank.
kannst Du mir noch erklären, was der Code macht bzw.
InStr(1, CStr(.Cells(lngZeile, 7)),
und wie viele or kann man wählen?
Ich würde es gern verstehen.
Gruß Regina
AW: Danke bitte erklären
30.01.2004 19:01:50
Nepumuk
Hallo Regina,
InStr(1, CStr(.Cells(lngZeile, 7)),"598000") sucht (hier ab der Stelle 1) in einem String (in dem Fall in der Zelle mit der Zeilennummer aus "lngZeile" in Spalte G = 7. Spalte) nach dem String "598000".
Die Anzahl der Bedingungen ist durch die maximale Länge einer VBA - Zeile limitiert. Aber wie lang die sein darf kann ich dir nicht sagen. Wenn es zu viele Bedingungen werden, sollest du über eine andere Methode des Vergleichs nachdenken. Um bei deinen Zahlen zu bleben, die könnten auch in so einer Schleife
For x = 598000 To 598200 Step 100
Next x
abgearbeitet werden.
Gruß
Nepumuk
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige