Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
372to376
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
372to376
372to376
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

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

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
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

304 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige