habe folgendes Problem:
Lasse mir nach Eingabe des Gewerks in einer Inputbox aus einer Tabelle per Zufallsgenerator sieben Firmen für ein bestimmtes Gewerk anzeigen. Die Gewerke, die eine Firma anbietet, stehen durch Komma getrennt in einer Zelle. Bei Firmen, die nur ein Gewerk anbieten, ist das kein Problem, wie kann ich aber Firmen, die mehrere Gewerke anbieten, anzeigen lassen (wo also das gesuchte Gewerk nach dem ersten oder zweiten Komma in der Zelle steht)? Geht das mit einem Platzhalter, wenn ja, wie?
Hier der Code:
option Explicit
Sub Zufallsauswahl()
Randomize Timer
Dim Zeile As Integer
Dim i As Integer, AnzNam As Integer
Dim allezahlen As Integer
Dim ziehung As Integer
Dim gezogen As Integer
Dim endeindex As Integer
Zeile = Range("B65535").End(xlUp).Row
ReDim Nam(Zeile) As String
ReDim Gew(Zeile) As String
For i = 1 To Zeile
Nam(i) = Cells(i, 2).Value
Gew(i) = Cells(i, 3).Value
Next i
Gew(0) = InputBox("Welches Gewerk")
For i = 1 To Zeile
If Gew(0) = Gew(i) Then
Exit For
Else
If Gew(0) Gew(i) And i = Zeile Then
MsgBox ("Dieses Gewerk gibt es nicht!")
Exit Sub
Else: End If
End If
Next i
Nam(0) = 7 'InputBox("Wieviele Firmen sollen ausgesucht werden?")
If Nam(0) > Zeile Then MsgBox ("Soviele Firmen sind für dieses Gewerk nicht vorhanden!"): Exit _
_
_
Sub
AnzNam = 0
For i = 1 To Zeile
If Gew(0) = Gew(i) Then
AnzNam = AnzNam + 1
Nam(AnzNam) = Nam(i)
Else: End If
Next i
ReDim zuzahl(AnzNam) As Integer
ReDim zahl(Nam(0)) As Integer
endeindex = AnzNam
For allezahlen = 1 To AnzNam
zuzahl(allezahlen) = allezahlen
Next allezahlen
Sheets("Zufallsgenerator").Cells(ziehung + 1, 1) = Gew(0)
'Cells(ziehung + 2, 5) = Nam(0)
For ziehung = 1 To Nam(0)
gezogen = Int(Rnd * endeindex) + 1
zahl(ziehung) = zuzahl(gezogen)
zuzahl(gezogen) = zuzahl(endeindex)
endeindex = endeindex - 1
ReDim Preserve zuzahl(endeindex)
Sheets("Zufallsgenerator").Cells(ziehung + 1, 1) = Nam(zahl(ziehung))
Next ziehung
End Sub
Stehe total auf dem Schlauch. Kann mir bitte jemand helfen!
Danke im voraus
Pims