Betrifft: Zeile nach Wert durchsuchen
von: Pascal
Geschrieben am: 01.10.2019 13:22:14
Hallo zusammen
Mein erster Eintrag. Ich habe schon viel von diesem Forum profitiert, danke erstmal dafür.
Ich habe folgendes Problem: Ich habe eine Makro welches meine Daten wunderbar sortiert etc. Resultat ist das file im Anhang. Als letztes i-Tüpfelchen müsste ich nun (in diese file) alle Zeilen von K-AG nach p, sp, stp und gw durchsuchen. Wenn p, sp, stp und gw vorkommen, müsste in der Spalte H derselben Zeile der Tabellenheader (Zeile 2 ) der Spalte in welcher das p, sp, stp und gw vorkommt stehen. Bei mehrfachen p, sp, stp und gw am besten mit ; getrennt (muss aber nicht sein). Im Anhang 2 ein file wie das Endresultat optimalerweise ausschaut...
Wenn hier jemand Hilfestellung leisen könnte wäre das grossartig!
132308.xlsm
132309.xlsm
Liebe Grüsse, Pascal
Betrifft: AW: Zeile nach Wert durchsuchen
von: Pascal
Geschrieben am: 01.10.2019 13:24:42
https://www.herber.de/bbs/user/132308.xlsm
https://www.herber.de/bbs/user/132309.xlsm
Betrifft: AW: Zeile nach Wert durchsuchen
von: fcs
Geschrieben am: 01.10.2019 15:44:00
Hallo Pascal,
konnte deine Datei hier jetzt nicht hochladen - systembedingt.
Ein MAkro sieht etwa wie folgt aus.
LG
Franz
Sub SpalteH_ausfuellen() Dim Zeile_H As Long Dim Zeile As Long Dim strH As String Dim Spalte As Long, Spa1 As Long, Spa2 As Long Dim wks As Worksheet Dim arrSuch, iSuch As Integer Dim StatusCalc As Long Set wks = ActiveSheet arrSuch = Array("p", "sp", "stp", "gw") 'Array mit zu suchenden Werten Zeile_H = 2 'Zeile mit Spalten-Header Spa1 = 11 'Spalte K - 1. zu durchsuchende Spalte Spa2 = 33 'Spalte AG - letzte zu durchsuchende Spalte With Application .ScreenUpdating = False StatusCalc = .Calculation .Calculation = xlCalculationManual End With With wks For Zeile = Zeile_H + 1 To .UsedRange.Row + .UsedRange.Rows.Count - 1 strH = "" For Spalte = Spa1 To Spa2 For iSuch = LBound(arrSuch) To UBound(arrSuch) If .Cells(Zeile, Spalte).Value = arrSuch(iSuch) Then If strH = "" Then strH = .Cells(Zeile_H, Spalte).Value Else strH = strH & ";" & .Cells(Zeile_H, Spalte).Value End If End If Next iSuch Next Spalte 'Ergebnis in Spalte H eintragen If strH = "" Then .Cells(Zeile, 8).ClearContents Else .Cells(Zeile, 8).Value = strH End If Next Zeile End With With Application .ScreenUpdating = True .Calculation = StatusCalc End With End Sub
Betrifft: AW: Zeile nach Wert durchsuchen
von: Pascal
Geschrieben am: 02.10.2019 15:33:50
Super! Vielen Dank, Franz