InputBox
- InputBox von popeye vom 11.09.2014 10:55:23
Betrifft: InputBox
von: popeye
Geschrieben am: 11.09.2014 10:55:23
Hallo Excelmenschen,
hier meine VBA code, ich möchte gerne die InputBox Farbe auf hellgrün ändern und wenn man den Inputbox "suchen" anklickt erscheint Suchfenster "Bitte MK-Notierung eingeben" das nur in die Zeilen 8 und 9 gesucht wird und zwar nur den Wert "ungefähr" muss also nicht exakt sein, Beispiel such 631 gefunden wird 630. Wäre super wenn jemand weiterhelfen könnte? Danke Vorab, VG Steve
Sub popeye()
Dim c, firstAddress
Dim sBegriff As String
Dim rHier As Range
With Tabelle1.Range("7:9,44:46,80:82")
sBegriff = InputBox("Bitte MK-Notierung eingeben")
If sBegriff = "" Then
'do nothing
Else
Set c = .Find(sBegriff, LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
Do
'c.Interior.Pattern = xlPatterngray17
If rHier Is Nothing Then
Set rHier = c
Else
Set rHier = Union(rHier, c)
End If
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress
End If
End If
End With
rHier.Select
End Sub
 |
Betrifft: AW: InputBox
von: fcs
Geschrieben am: 11.09.2014 11:29:50
Hallo popeye,
bei der Farbe der Inputbox musst du mit den Vorgaben von Microsoft leben.
Wenn du Farbe willst, dann musst du ein Userform erstellen.
wenn man den Inputbox "suchen" anklickt erscheint Suchfenster "Bitte MK-Notierung eingeben"
Dies verstehe ich nicht - was möchtest du hier?
Für die ungefähr-Suche hab ich im Suchbegriff "*" davor und danach eingefügt.
Allerdings funktoniert das das dann so, dass du als Suchbegriff 63 eingibst, wenn als Ergebnis 630, 631, und 763 gefunden werden soll.
Gruß
Franz
Sub popeye()
Dim c, firstAddress
Dim sBegriff As String
Dim rHier As Range
With Tabelle1.Range("8:9") 'Suchbereich
sBegriff = InputBox("Bitte MK-Notierung eingeben")
If sBegriff = "" Then
'do nothing
Else
Set c = .Find("*" & sBegriff & "*", LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
Do
'c.Interior.Pattern = xlPatterngray17
If rHier Is Nothing Then
Set rHier = c
Else
Set rHier = Union(rHier, c)
End If
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress
End If
End If
End With
rHier.Select
End Sub
Betrifft: AW: InputBox
von: popeye
Geschrieben am: 11.09.2014 11:51:46
Hallo Franz,
danke für deine Hilfe!
Das ist gut mit den *, ich habe nur noch eine Frage, wenn ein Wert nicht gefunden wird, bekomme ich ein "laufzeitfehler! Besteht die Möglichkeit wenn ein Wert nicht vorhanden ist dass auch ein Dialogfenster erscheint mit "Wert nicht gefunden"?
VG Steve
Betrifft: AW: InputBox
von: fcs
Geschrieben am: 11.09.2014 12:22:19
Hallo Steve,
da muss man die Zeilen ein wenig umstellen und die passende Prüfung einbauen.
Gruß
Franz
Sub popeye()
Dim c, firstAddress
Dim sBegriff As String
Dim rHier As Range
With Tabelle1.Range("8:9")
sBegriff = InputBox("Bitte MK-Notierung eingeben")
If sBegriff = "" Then
'do nothing
Else
Set c = .Find("*" & sBegriff & "*", LookIn:=xlValues)
If c Is Nothing Then
MsgBox "Begriff """ & sBegriff & """ nicht gefunden"
Else
firstAddress = c.Address
Do
'c.Interior.Pattern = xlPatterngray17
If rHier Is Nothing Then
Set rHier = c
Else
Set rHier = Union(rHier, c)
End If
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress
rHier.Select
End If
End If
End With
End Sub
Betrifft: AW: InputBox
von: popeye
Geschrieben am: 11.09.2014 12:50:00
Hallo Franz,
ich bin begeistert!!! Vielen Herzlichen Dank
VG Steve
Beiträge aus den Excel-Beispielen zum Thema "InputBox"