Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1476to1480
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

Stringsuchbegriffe innerhalb String pos. dynamisch

Stringsuchbegriffe innerhalb String pos. dynamisch
04.03.2016 20:38:38
Tom
Hallo VBA Crew,
ich habe ein Problem und zwar möchte ich per Schleife die in meiner Excel Tabelle vorhanden Stringparameter (33 Stellig) überprüfen auf 3 verschiedene Suchbegriffe.
String Suchbegriffe sind "HSH","NOR","LAS"
In meiner Tablle in Spalte A befinden sich im real Fall mehrere hundert Zeilen in denen die zu durchsuchenden Strings stehen. Ist einer der Suchbegriffe enthalten Bsp. String in Zelle A2 enthält HSH dann soll der Stringsuchbegriff HSH in Zelle B2 geschrieben werden..
! Das große Problem an der Sache ist, dasssich die Stringsuchbegriffe nicht immer an der selben String Position befinden sondern diese dynamisch ist :(
Ich weiß leider nur wie ich statisch mit der mid Funktion ab einer festdefinierten String Position auslesen kann wie im CodeBeispiel zu sehen. Wie kann ich die Mid Funktion um die Suchvariablen verknüpfen oder gibt es für diese Problem Stellung einen besseren Lösungsansatz?
Spalte A
HE0001564613AT1265HSH000007835465
HE000NOR4613AT126H547800000785478
HE0005784613AT126H5478000007LAS78
HE0001564615HSH000TH4567800783545
HE00015646154000TH456780HSH078345
HE0005784LAS0T126H547800000757188
Ausgabe Spalte B (gefundener Stringsuchbegriff)
HSH
NOR
LAS
HSH
HSH
LAS
MAKRO mit Beispielen anbei:
https://www.herber.de/bbs/user/104113.xlsm
'**** Ermittlung Stringsuchwerte mit dynamischerposition im jeweiligen String  ***********
Sub Dynamische_Stringsuchbegriffe()
Dim EndePivot As Long
EndePivot = Worksheets("Auswertung").UsedRange.Rows.Count
Dim Suchbegriffe As Long
Dim Zeile As Long
Dim Suchbegriff01 As String
Dim Suchbegriff02 As String
Dim Suchbegriff03 As String
Suchbegriff01 = "HSH"
Suchbegriff02 = "NOR"
Suchbegriff03 = "LAS"
' Stringsuchbegriffe sind HSH, NOR, LAS
' Diese Suchbegriffe befinden an verschiedenen Positionen innerhalb der Suchstring Parameter
Zeile = 2
For Suchbegriffe = 1 To EndePivot
Worksheets("Auswertung").Cells(Zeile, 3).Value = Mid(Worksheets("Auswertung").Cells(Zeile,  _
1).Value, 20, 3)
Zeile = Zeile + 1
Next Suchbegriffe
End Sub
Danke und Gruß
Tom

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Stringsuchbegriffe innerhalb String pos. dynamisch
04.03.2016 21:43:38
Werner
Hallo Tom,
bei nur drei Suchbegriffen - wie wäre es mit einer Formellösung.
Suchbegriffe in G1, G2, G3
Formel in B1: =WENN(ISTZAHL(FINDEN($G$1;A1));$G$1;WENN(ISTZAHL(FINDEN($G$2;A1));$G$2;WENN(ISTZAHL(FINDEN($G$3;A1));$G$3;"")))
Gruß Werner

AW: Stringsuchbegriffe innerhalb String pos. dynamisch
04.03.2016 21:43:59
KlausF
Hallo Tom,
Du musst ja gar nicht wissen an welcher Stelle der Suchbegriff steht
sondern nur, ob er vorhanden ist. Probier mal
Sub Dynamische_Stringsuchbegriffe()
Dim i As Long
Dim lngLast As Long
lngLast = Worksheets("Auswertung").Cells(Rows.Count, 1).End(xlUp).Row
Dim Suchbegriff01 As String
Dim Suchbegriff02 As String
Dim Suchbegriff03 As String
Suchbegriff01 = "HSH"
Suchbegriff02 = "NOR"
Suchbegriff03 = "LAS"
For i = 2 To lngLast
If InStr(Range("A" & i), Suchbegriff01) > 0 Then Range("B" & i).Value = Suchbegriff01
If InStr(Range("A" & i), Suchbegriff02) > 0 Then Range("B" & i).Value = Suchbegriff02
If InStr(Range("A" & i), Suchbegriff03) > 0 Then Range("B" & i).Value = Suchbegriff03
Next i
End Sub
Gruß
Klaus
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige