VBA – Excel TextBox1将对象分配给variables

当我尝试将TextBox1分配给variablesX时出现错误。

Sub TB1() Dim X As TextBox Dim Y As String X = TextBox1 If Len(X) < 4 Then Y = X Do Y = "0" & Y Loop Until Len(Y) >= 4 X = Y End If End Sub 

你有几个问题。 有关代码的详细信息,请参阅注释

 Sub TB1() Dim X As TextBox Dim Y As String Set X = Me.TextBoxes("Textbox 1") 'You need to have some sort of reference to get to the textbox. 'Me in this case is a worksheet object I tested in the Sheet1 module. 'It has a collection of textboxes which you can refer to by name. Click on your textbox in excel to see the name in the upper left corner. 'The `Set` syntax is necessary for objects If Len(X.Text) < 4 Then Y = X.Text 'Have to explicitly refer to the text in the textbox since it has other properties you can change like height and width Do Y = "0" & Y Loop Until Len(Y) >= 4 X.Text = Y 'Explicitly refer to the textbox text again to reassign End If End Sub