Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema Userform
BildScreenshot zu Userform Userform-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Label
BildScreenshot zu Label Label-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema TextBox
BildScreenshot zu TextBox TextBox-Seite mit Beispielarbeitsmappe aufrufen

Textbox als Variable ansprechen?


Betrifft: Textbox als Variable ansprechen? von: Anja
Geschrieben am: 16.09.2019 14:37:05

Hallo zusammen,
ich möchte gerne, nachdem Nummern in Textboxen eingetragen wurden, diese in ein Tabellenblatt in einer bestimmten Zelle, die variabel ist, eingetragen werden.
Das funktioniert mit dem untenstehenden Code alles gut. Nun habe ich aber immer wieder die gleiche Funktion. Lediglich der Textboxname ändert sich. Hier würde ich gerne für die Textboxen eine Variable einsetzten. Mein Versuch das mit einem Array zu lösen funktioniert nicht.
Hat jemand eine Idee dazu?
Vielen Dank
Anja

Private Sub Hinrunde_Click()
    
    Dim z, x As Integer
    Dim Zieltab As Worksheet
    Dim Gewichtsarray(5) As String
    Dim Zähler As Integer
    Set Zieltab = ActiveWorkbook.Worksheets("Kampfreihenfolge Frauen")
    
    Gewichtsarray(0) = "-52"
    Gewichtsarray(1) = "-57"
    Gewichtsarray(2) = "-63"
    Gewichtsarray(3) = "-70"
    Gewichtsarray(4) = "+70"
    
    Zähler = 0
    
    For x = 2 To 6
        If Zieltab.Cells(x, 2).Value = Gewichtsarray(Zähler) Then
            Zieltab.Cells(x, 1).Value = TextBox72.Value
        End If
    Next x
        Zähler = Zähler + 1
        x = 1
    For x = 2 To 6
        If Zieltab.Cells(x, 2).Value = Gewichtsarray(Zähler) Then
            Zieltab.Cells(x, 1).Value = TextBox73.Value
        End If
    Next x
        Zähler = Zähler + 1
        x = 1
    For x = 2 To 6
        If Zieltab.Cells(x, 2).Value = Gewichtsarray(Zähler) Then
            Zieltab.Cells(x, 1).Value = TextBox74.Value
        End If
    Next x
        Zähler = Zähler + 1
        x = 1
    For x = 2 To 6
        If Zieltab.Cells(x, 2).Value = Gewichtsarray(Zähler) Then
            Zieltab.Cells(x, 1).Value = TextBox75.Value
        End If
    Next x
        Zähler = Zähler + 1
        x = 1
    For x = 2 To 6
        If Zieltab.Cells(x, 2).Value = Gewichtsarray(Zähler) Then
            Zieltab.Cells(x, 1).Value = TextBox76.Value
        End If
    Next x
    End Sub

  

Betrifft: AW: Textbox als Variable ansprechen? von: 1713320.html
Geschrieben am: 16.09.2019 14:50:19

Hi
kommt darauf an.
in einer Userform kannst du Steuerelemente über die Funktion Controls("SteuerelementName") ansprechen:

...Value = Me.Controls("TextBox" & x).Text
mit ActiveX-Controls auf dem Tabellenblatt geht das so nicht.

Gruß Daniel
  

Betrifft: AW: Textbox als Variable ansprechen? von: 1713330.html
Geschrieben am: 16.09.2019 15:24:44

Hallo Anja,

wenn die Textboxen forlaufende Nummern haben geht es wie folgt.
Ansonsten kannst du die Namen der Textboxen auch in ein Array schreiben und in der Schleife abarbeiten.

LG
Franz

Private Sub Hinrunde_Click()
 
 Dim z, x As Integer
 Dim Zieltab As Worksheet
 Dim Gewichtsarray(5) As String
 Dim Zähler As Integer
 
 Set Zieltab = ActiveWorkbook.Worksheets("Kampfreihenfolge Frauen")
 
 Gewichtsarray(0) = "-52"
 Gewichtsarray(1) = "-57"
 Gewichtsarray(2) = "-63"
 Gewichtsarray(3) = "-70"
 Gewichtsarray(4) = "+70"
 
 For Zähler = 0 To 4
     
     For x = 2 To 6
         If Zieltab.Cells(x, 2).Value = Gewichtsarray(Zähler) Then
             Zieltab.Cells(x, 1).Value = _
                 Me.Shapes("Textbox" & Format(72 + Zähler, "0")).OLEFormat.Object.Object.Value ' _
 bei Active-X-Textbox
             Zieltab.Cells(x, 1).Value = Me.Controls("Textbox" & Format(72 + Zähler, "0")).Value  _
 'bei Userform-Textbox
         End If
     Next x
     x = 1
 Next Zähler
 End Sub
 

  

Betrifft: AW: Textbox als Variable ansprechen? von: 1713337.html
Geschrieben am: 16.09.2019 15:51:25

Hallo Franz,
vielen lieben Dank. Hat super funktioniert!
Anja

  

Betrifft: AW: Textbox als Variable ansprechen? von: 1713338.html
Geschrieben am: 16.09.2019 15:52:19

Hallo Daniel,
vielen Dank dafür!
Anja

Beiträge aus dem Excel-Forum zum Thema "Textbox als Variable ansprechen?"