Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1148to1152
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
Inhaltsverzeichnis

vba: teilstring suchen und kopieren

vba: teilstring suchen und kopieren
Jonathan
Hallo zusammen,
in einer Spalte A meiner Tabelle können in einer Zelle mehrere, durch Komma getrennte, Nummern vorkommen.
Die länge wie auch die Anzahl der verschiedenen Nummern in einer Zelle ist unterschiedlich.
In den Zellen A3-A5 stehen die zu suchenden Nummern.
Nun soll die Spalte A nach den zu suchenden Nummern durchgesucht werden. Wird eine der Nummern gefunden soll diese eine Nummer in die Spalte B kopiert werden.
Wichtig zu erwähnen ist, dass die drei zu suchenden Nummern nie in einer Zelle zusammen stehen können.
Für ein besseres Verständnis hier eine Bsp.-Datei:
https://www.herber.de/bbs/user/68999.xls
Vielen Dank für eure Hilfe!
Gruß
Jonathan

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: vba: teilstring suchen und kopieren
10.04.2010 15:20:40
Gerd
Halo Jonathan,
an den Bereichabgrenzungen kannst noch etwas feilen.
Sub bi()
Dim j As Long, k As Long, l As Integer
For j = 9 To Cells(9, 1).End(xlDown).Row
For l = 0 To UBound(Split(Cells(j, 1), ","))
For k = 3 To 5
If Cells(k,1) "" then
If Trim$(Split(Cells(j, 1), ",")(l)) = Cells(k, 1) Then Cells(j, 2) = Cells(k, 1): _
Exit For
End If
Next k
Next l
Next j
End Sub
Gruß Gerd
AW: vba: teilstring suchen und kopieren
10.04.2010 15:30:21
Jonathan
Hallo Gerd,
super, vielen Dank - funktioniert.
Gruß
Jonathan
AW: vba: teilstring suchen und kopieren
10.04.2010 15:51:23
Peter
Hallo Jonathan,
auch so sollte das funktionieren:
Option Explicit
Public Sub Suchen()
Dim WkSh           As Worksheet
Dim lLetzte        As Long
Dim lZeile         As Long
Dim sBegriff(2)    As String
Dim iBegr          As Integer
Dim vZellenInhalt  As Variant
Dim iZeIn          As Integer
Dim bGefunden      As Boolean
   Application.ScreenUpdating = False
   
   Set WkSh = ThisWorkbook.Worksheets("Tabelle1")
   
   sBegriff(0) = Trim(WkSh.Range("A3").Value)
   sBegriff(1) = Trim(WkSh.Range("A4").Value)
   sBegriff(2) = Trim(WkSh.Range("A5").Value)
   
   lLetzte = WkSh.Cells(Rows.Count, 1).End(xlUp).Row
   If lLetzte < 9 Then lLetzte = 9
   WkSh.Range("B9:B" & lLetzte).ClearContents
   
   For lZeile = 9 To lLetzte
      bGefunden = False
      vZellenInhalt = Split(WkSh.Range("A" & lZeile).Value, ",")
      For iZeIn = LBound(vZellenInhalt) To UBound(vZellenInhalt)
         For iBegr = 0 To 2
            If Trim(vZellenInhalt(iZeIn)) = sBegriff(iBegr) Then
               WkSh.Range("B" & lZeile).Value = sBegriff(iBegr)
               bGefunden = True
               Exit For
            End If
         Next iBegr
         If bGefunden = True Then Exit For
      Next iZeIn
   Next lZeile
End Sub
Gruß Peter
Anzeige

341 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige