Hallo,
ich habe folgendes Problem bei meiner VBA Userform Programierung.
Ich möchte in meiner Tabelle einen Satz suchen und ihn dann in meiner Userform in den Textboxen anzeigen lassen. ich arbeite mit der "Selection.Find" methode. Da ich nicht weiss in welcher Textbox der Benutzer sucht, muss ich die TBSatNr Textbox varialbel haben. Dazu eine Variable "SuchFeldName" definiert die dann die Variable textbox repräsentieren soll. Leider funktioniert die "Selektion.Find" mit der "SuchFeldName" nicht.
Private Sub CMBsatzsuchen_Click()
Dim suchFeldName As String
Dim Spaltenzähler As Integer
Dim tb As Object
Dim SuchString As String
Set frm2 = USerfassen
For Each tb In USerfassen.Controls
If TypeName(tb) = "TextBox" Then SuchString = tb.Text
suchFeldName = tb.Name
If SuchString <> "" Then Exit For
Next tb
With frm2
Sheets("Tabelle").Select
If suchFeldName = TBSatzNr.Name Then Range("a:a").Select
If suchFeldName = TBSatzNr.Name Then Spaltenzähler = 0 Funktioniert aber nur mit Textbox (TBPosten)
On Error GoTo fehler
Selection.Find(What:=.TBSatzNr.Value, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False).Activate
Funktioniert nicht mit SuchfeldName
On Error GoTo fehler
Selection.Find(What:=suchFeldName, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False).Activate
Spaltenzähler = Spaltenzähler + 1
.TberfasDatum.Value = ActiveCell.Offset(0, Spaltenzähler).Value
fehler:
MsgBox "Eine Satznummer : " & .TBSatzNr.Value & _
" konnte nicht gefunden werden!"
End With
End Sub
|