Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1640to1644
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Excel VBA TextBox deklarieren
22.08.2018 16:10:05
DerDeklarator
Hallo zusammen,
ich habe einige TextBoxen (ActiveX-SE) in ein Worksheet eingebunden. Diese würde ich nun gerne deklarieren, damit ich beim Ansprechen der TextBoxen nicht immer mit "Rattenschwanz" operieren muss. Beispiel-Code:
Option Explicit
Sub Deklaration()
Dim CB_01 As ComboBox
Dim TB_01 As TextBox
Set CB_01 = ActiveWorkbook.Sheets(1).ComboBox1
Set TB_01 = ActiveWorkbook.Sheets(1).TextBox1
MsgBox TB_01.Value
MsgBox CB_01.Value
End Sub

Die ComboBox funktioniert einwandfrei. Die TextBox nicht. Was mache ich falsch?
Besten Dank bereits vorab!

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel VBA TextBox deklarieren
22.08.2018 16:23:50
Torsten
Deklarier mal beide als Object
AW: Excel VBA TextBox deklarieren
22.08.2018 16:51:27
DerDeklarator
Hallo Torsten,
danke für deinen Hinweis. Leider ist die Lösung noch nicht ausreichend.
Deklariere ich die TextBox via "Private" außerhalb der Sub und rufe den Wert der TextBox dann auf, funktioniert der Abruf von Value nicht.
Dank und Gruß
AW: Excel VBA TextBox deklarieren
22.08.2018 17:03:42
Torsten
Bei mir funktioniert das. Du meinst doch so:
Private TB_01 As Object
Sub Deklaration()
Dim CB_01 As Object
Set CB_01 = ActiveWorkbook.Sheets("Sheet2").ComboBox1
Set TB_01 = ActiveWorkbook.Sheets("Sheet2").TextBox1
MsgBox TB_01.Value
MsgBox CB_01.Value
End Sub

Anzeige
AW: ActiveX-TextBoxen deklarieren
26.08.2018 11:17:51
Gerd
Moin
Option Explicit
Public TB As Variant, ct As Integer
Sub Installator()
Dim Element As OLEObject
ReDim TB(1 To 1)
For Each Element In Tabelle1.OLEObjects
If Element.progID = "Forms.TextBox.1" Then
ct = ct + 1
ReDim Preserve TB(1 To ct)
Set TB(ct) = Element.Object
End If
Next
End Sub
Sub Publicator()
For ct = LBound(TB) To UBound(TB)
MsgBox TB(ct).Value
Next
End Sub

Gruß Gerd

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige