![]() |
Betrifft: Excel VBA Makro Werte suchen,einfügen in Sheet2
von: braun
Geschrieben am: 14.11.2014 10:32:22
Sheets(1).Select
Sheets.Add After:=Sheets(1)
Sheets(2).Name = "TabelleABC"
Sheets(1).Select
Rows("1:2").Select
Selection.Copy
Sheets(2).Select
Range("A1").Select
ActiveSheet.Paste
Sheets(1).Select
'Startzeile
startzeile = 2
Spalte = 14
grenzwert = 2
startzeile2 = 2
Spalte2 = 8
grenzwert2 = "Text1"
grenzwert3 = "Text2"
Spalte3 = 3
grenzwert4 = "Zahlenfolge1"
grenzwert5 = "Zahlenfolge2"
grenzwert6 = "Zahlenfolge3"
Sheets(1).Select
Letzte_Zeile = Range(Cells(65536, Spalte), Cells(65536, Spalte)).End(xlUp).Row
For i = startzeile To Letzte_Zeile
If Sheets(1).Cells(i, Spalte) > grenzwert And Sheets(1).Cells(i, Spalte2) = grenzwert2 And Sheets(1).Cells(i, Spalte3) = grenzwert4 Or Sheets(1).Cells(i, Spalte) > grenzwert And Sheets(1).Cells(i, Spalte2) = grenzwert2 And Sheets(1).Cells(i, Spalte3) = grenzwert5 Or Sheets(1).Cells(i, Spalte) > grenzwert And Sheets(1).Cells(i, Spalte2) = grenzwert2 And Sheets(1).Cells(i, Spalte3) = grenzwert6 Or Sheets(1).Cells(i, Spalte) > grenzwert And Sheets(1).Cells(i, Spalte2) = grenzwert3 And Sheets(1).Cells(i, Spalte3) = grenzwert4 Or Sheets(1).Cells(i, Spalte) > grenzwert And Sheets(1).Cells(i, Spalte2) = grenzwert3 And Sheets(1).Cells(i, Spalte3) = grenzwert5 Or Sheets(1).Cells(i, Spalte) > grenzwert And Sheets(1).Cells(i, Spalte2) = grenzwert3 And Sheets(1).Cells(i, Spalte3) = grenzwert6 Then
Sheets(1).Rows(i & ":" & i).Copy
Sheets(2).Select
Cells(startzeile2, 1).Select
ActiveSheet.Paste
startzeile2 = startzeile2 + 1
Else
End If
Next
Guten Morgen,
Habe eben eine Schleife erstellt, nur leider funktioniert es nicht.Das Makro kopiert lediglich nur die Überschriften.
Kann mir jemand helfen?
Vielen Dank im Voraus
![]() ![]() |
Betrifft: Ohne Beispieldaten nicht zu machen
von: Frank
Geschrieben am: 14.11.2014 12:48:09
Hallo,
das hier
Letzte_Zeile = Range(Cells(65536, Spalte), Cells(65536, Spalte)).End(xlUp).Row
wäre mir zu unübersichtlich. Ich würde das so schreiben
Letzte_Zeile = Range("N65536").End(xlUp).Row,
da Du ja sowieso Spalte fest den Wert 14 zugewiesen hast.
Wahrscheinlich ist aber der undurchsichtige IF-Vergleich nur für die Überschriftenzeile gültig und wird deshalb nur dort ausgeführt.
Gruss,
Frank
![]() ![]() |
Betrifft: Excel VBA Makro Werte suchen,einfügen in Sheet2
von: braun
Geschrieben am: 14.11.2014 14:45:34
Dim arrSuchbegriff, i&
arrSuchbegriff = Array("123456789", "123456787", "123456786")
For i = LBound(arrSuchbegriff) To UBound(arrSuchbegriff)
ActiveSheet.Columns("A").Replace arrSuchbegriff(i), "#########", xlPart
Next i
ActiveSheet.Columns("A").AutoFilter Field:=1, Criteria1:="*#########*"
ActiveSheet.Cells.EntireRow.Delete
Dieser Code klappt jetzt super, allerdings löscht er mir die erste Zeile raus. Warum?
![]() ![]() |
Betrifft: Anderes Problem?
von: Frank
Geschrieben am: 14.11.2014 15:29:48
Bist Du Dir sicher, dass es da um's gleiche Problem geht? Und hast Du jetzt den Code vom ersten Beitrag durch diesen ersetzt?
Verstehe ich nicht und bin raus.
Grüsse,
Frank
![]() |