Thema Datum  Von Nutzer Rating
Antwort
02.07.2009 10:12:30 embedded
NotSolved
Blau Aw:Eintrag in Tabelle Suchen
02.07.2009 11:17:59 Holger
NotSolved

Ansicht des Beitrags:
Von:
Holger
Datum:
02.07.2009 11:17:59
Views:
1051
Rating: Antwort:
  Ja
Thema:
Aw:Eintrag in Tabelle Suchen
Hallo embedded,
ergänze zu
Set rngFound = Worksheets("Name").Columns(2).Find(...
oder
Set rngFound = Worksheets(Nummer).Columns(2).Find(...
Wenn du alle Tabellenblätter automatisch durchsuchen willst, kannst du z.B.
Dim strSuche As String ' Danach wird gesucht
Dim rngFound As Range ' hier wurde es gefunden
Dim strFirstAddress As String ' die Adresse der 1. Fundstelle
Dim i As Long ' Zeilenzähler in Spalte K (=11)
i = 5 ' 1. ERgebnis in Zeile 5
strSuche = Faktum
For Each WS In Worksheets
' After ans Ende stellen, damit die 1. Zelle von oben auch sicher gefunden wird
' Suchen in Spalte B (=2) in Werten, gesamten Zellinhalt vergleichen
Set rngFound = WS.Columns(2).Find(What:=strSuche, After:=Cells(Rows.Count, 2), LookIn:=xlValues, LookAt:=xlWhole)
If Not rngFound Is Nothing Then
strFirstAddress = rngFound.Address ' 1. Fundstelle merken fürs Abbrechen merken um FindNext abzubrechen
MsgBox WS.Name + ": Zeile: " & rngFound.Row
Exit Sub
Else
End If
Next
MsgBox "None"
benutzen.
Übrigend: Das i verwendest du nicht weiter.
Gruß
Holger


embedded schrieb am 02.07.2009 10:12:30:

Hallo Community

Ich bin ein zimlicher VBA Anfänger und komme gerade mit folgendem Problem nicht weiter:

Ich suche einen Text in einem Arbeitsblatt, das Funktioniert auch gut, wenn ich in diesem Arbeitsblatt bin, meine Excel Mappe hat aber 3 Arbeitsblätter und ich möchte gerne, dass die suche Funktioniert, egal welches man gerade anschaut. Folgenden Code habe ich:

Code:

Dim strSuche As String ' Danach wird gesucht
Dim rngFound As Range ' hier wurde es gefunden
Dim strFirstAddress As String ' die Adresse der 1. Fundstelle
Dim i As Long ' Zeilenzähler in Spalte K (=11)

i = 5 ' 1. ERgebnis in Zeile 5
strSuche = Faktum
' After ans Ende stellen, damit die 1. Zelle von oben auch sicher gefunden wird
' Suchen in Spalte B (=2) in Werten, gesamten Zellinhalt vergleichen
Set rngFound = Columns(2).Find(What:=strSuche, After:=Cells(Rows.Count, 2), LookIn:=xlValues, LookAt:=xlWhole)
If rngFound Is Nothing Then
MsgBox "None"
Exit Sub ' nix gefunden
End If
' 1. Fundstelle merken fürs Abbrechen merken um FindNext abzubrechen
strFirstAddress = rngFound.Address
MsgBox "Zeile: " & rngFound.Row


Kann ich diesem Code irgendwie sagen, in welchen Arbeitsblatt der Range ist?

Mit freundlichen Grüssen

Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
02.07.2009 10:12:30 embedded
NotSolved
Blau Aw:Eintrag in Tabelle Suchen
02.07.2009 11:17:59 Holger
NotSolved