Anzeige
Archiv - Navigation
336to340
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
336to340
336to340
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zellen in Tabelle suchen Zeile markieren

Zellen in Tabelle suchen Zeile markieren
11.11.2003 07:14:54
Thomas
Guten Morgen,

Ich hoffe das mir hier jemand helfen kann.
Folgendes Problem:

Ich muss die Spalte G nach verschiedenen Werten (insgesamt 3 verschiedene) durchsuchen, wenn das Makro einen Wert gefunden hat, soll es die ganze Zeile kopieren und in die entsprächende Tabelle schreiben (z.B. Wert1 in Tabelle "Wert1"; Wert2 in Tabelle "Wert2";... )

Ich hoffe ich habe mich verständlich ausgedrückt und es wäre möglich mir zu helfen

Gruß Thomas

PS:
Ich habe bereits schon so ein Makro, aber das funktioniert nur mit Zahen und nicht mit Strings

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellen in Tabelle suchen Zeile markieren
11.11.2003 07:42:32
WernerB.
Hallo Thomas,

leider hast Du nicht geschrieben, woher das Makro wissen soll, was die Werte 1, 2 und 3 sind. Im nachstehenden Lösungsvorschlag bin ich deshalb davon ausgegangen, dass diese Werte in den Zellen A1, A2 und A3 stehen.

Option Explicit

Sub Thomas()
Dim SuBe As Range
Dim s1 As String, s2 As String, s3 As String
Dim laRQ As Long, laRZ As Long
Application.ScreenUpdating = False
laRQ = Cells(Rows.Count, 7).End(xlUp).Row
s1 = Range("A1").Value
s2 = Range("A2").Value
s3 = Range("A3").Value
Set SuBe = Range("G1:G" & laRQ).Find(s1, lookat:=xlWhole)
If Not SuBe Is Nothing Then
laRZ = Sheets("Wert1").Cells(Rows.Count, 1).End(xlUp).Row
If laRZ = 1 And Sheets("Wert1").Range("A1").Value = "" Then laRZ = 0
Rows(SuBe.Row).Copy
Sheets("Wert1").Range("A" & laRZ + 1).PasteSpecial Paste:=xlAll, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Else
MsgBox "Wert1 nicht gefunden !", vbOKOnly + vbInformation, _
"Dezenter Hinweis für " & Application.UserName & ":"
End If
Set SuBe = Range("G1:G" & laRQ).Find(s2, lookat:=xlWhole)
If Not SuBe Is Nothing Then
laRZ = Sheets("Wert2").Cells(Rows.Count, 1).End(xlUp).Row
If laRZ = 1 And Sheets("Wert2").Range("A1").Value = "" Then laRZ = 0
Rows(SuBe.Row).Copy
Sheets("Wert2").Range("A" & laRZ + 1).PasteSpecial Paste:=xlAll, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Else
MsgBox "Wert2 nicht gefunden !", vbOKOnly + vbInformation, _
"Dezenter Hinweis für " & Application.UserName & ":"
End If
Set SuBe = Range("G1:G" & laRQ).Find(s3, lookat:=xlWhole)
If Not SuBe Is Nothing Then
laRZ = Sheets("Wert3").Cells(Rows.Count, 1).End(xlUp).Row
If laRZ = 1 And Sheets("Wert3").Range("A1").Value = "" Then laRZ = 0
Rows(SuBe.Row).Copy
Sheets("Wert3").Range("A" & laRZ + 1).PasteSpecial Paste:=xlAll, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Else
MsgBox "Wert3 nicht gefunden !", vbOKOnly + vbInformation, _
"Dezenter Hinweis für " & Application.UserName & ":"
End If
Set SuBe = Nothing
Application.ScreenUpdating = True
End Sub

Viel Erfolg wünscht
WernerB.

P.S.: Das Forum lebt auch von den Rückmeldungen der Fragesteller an die Antworter (siehe Forums-FAQ).
Anzeige
AW: Zellen in Tabelle suchen Zeile markieren
11.11.2003 12:52:01
Thomas
Hi,
erstmal danke.

aber das Programm läuft nicht ganz so wie ich es mir vorstelle. Ich habs für meine Zwecke umgeschrieben vieleicht ist mir da ein Fehler unterlaufen.

Ich beschreibe nochmalsetwas genauer...

Die Werte nach denen gesucht werden soll sind fest. "age"; "hto"; "d4h"
diese Werte stehen in der tabelle quer beet in spalte "G", Datenblatt "planning5"
jetzt sollen halt alle Zeilen in denen "age" in Spalte G auftaucht aus dem datenblatt planning5 kopiert und in das datenblatt "age" eingefügt werden. genauso mit "hto" und "d4h"

vielen dank im Vorraus
Gruß Thomas
Anzeige
AW: Zellen in Tabelle suchen Zeile markieren
11.11.2003 13:17:00
WernerB.
Hallo Thomas,

aus Deinem ersten Beitrag ging leider auch nicht hervor, dass die Suchbegriffe mehrfach vorhanden sein können.
Nun denn - vielleicht entspricht dieses neue Makro eher Deinen Wünschen:

Option Explicit

Sub Thomas()
Dim c As Range
Dim laRQ As Long, laRZ As Long
Application.ScreenUpdating = False
laRQ = Cells(Rows.Count, 7).End(xlUp).Row
For Each c In Sheets("planning5").Range("G1:G" & laRQ)
If c.Value = "age" Then
laRZ = Sheets("age").Cells(Rows.Count, 1).End(xlUp).Row
If laRZ = 1 And Sheets("age").Range("A1").Value = "" Then laRZ = 0
Rows(c.Row).Copy
Sheets("age").Range("A" & laRZ + 1).PasteSpecial Paste:=xlAll, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
End If
If c.Value = "hto" Then
laRZ = Sheets("hto").Cells(Rows.Count, 1).End(xlUp).Row
If laRZ = 1 And Sheets("hto").Range("A1").Value = "" Then laRZ = 0
Rows(c.Row).Copy
Sheets("hto").Range("A" & laRZ + 1).PasteSpecial Paste:=xlAll, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
End If
If c.Value = "d4h" Then
laRZ = Sheets("d4h").Cells(Rows.Count, 1).End(xlUp).Row
If laRZ = 1 And Sheets("d4h").Range("A1").Value = "" Then laRZ = 0
Rows(c.Row).Copy
Sheets("d4h").Range("A" & laRZ + 1).PasteSpecial Paste:=xlAll, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
End If
Next c
Application.ScreenUpdating = True
End Sub

Gruß WernerB.
Anzeige
AW: Zellen in Tabelle suchen Zeile markieren
11.11.2003 13:22:42
Thomas
Hey,
vielen vielenb dank!!!
es funktioniert

Gruß Thomas

305 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige