Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Platzhalter für Inputbox?

Platzhalter für Inputbox?
17.08.2008 19:17:00
pims
Hallo,
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

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Platzhalter für Inputbox?
17.08.2008 19:33:00
Ramses
Hallo
"...Stehe total auf dem Schlauch..."
Ich auch, ich kann mir beim besten Willen nicht vorstellen wie das aussehen soll, und was du unter
"..wo also das gesuchte Gewerk nach dem ersten oder zweiten Komma in der Zelle steht).."
verstehst.
Allenfalls würde ich jetzt aus der Hüfte heraus mal auf die Funktionen INSTR(); LEFT() und RIGHT() tippen.
Erläuterungen dazu in der VBA-Online Hilfe
Gruss Rainer

Anzeige
AW: Platzhalter für Inputbox?
17.08.2008 19:55:00
Gerd
Hallo Pims!

Sub Schlauch()
dim i as integer
For i = 1 to Ubound(Split(Cells(1,1), ",")
Msgbox Split(Cells(1,1), ",") (i)
Next
End Sub


Gruß Gerd

;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige