我已经找了一段时间找到答案,我看到一些类似的代码,并尝试调整我的代码工作。基本上,我需要userform
上的所有文本框都根据从其中一个文本框中的另一个工作表收到的文本变成白色字体。我知道我很亲近,但我不明白措辞的位置!
Sub ChangeClr()
Dim tbMyTextBox As TextBox
Dim ufMyUserForm As UserForm
For Each tbMyTextBox In ufMyUserForm
If tbAction1 = "Tank In Spec" Then
tbMyTextBox.BackColor = vbGreen
tbMyTextBox.ForeColor = vbBlack
Else
tbTextBox.BackColor = vbGreen
tbMyTextBox.ForeColor = vbBlack
End If
Next tbMyTextBox
End Sub
答案 0 :(得分:0)
现在我知道您在Excel中使用VBScript,此代码将根据操作文本框中的措辞循环并更改所有文本框(包括操作文本框)。您可以调整到您的确切规格。
Dim varControl As Control
For Each varControl In ufMyUserForm.Controls
If TypeOf varControl Is MSForms.TextBox Then
If tbAction1 = "Tank In Spec" Then
varControl.BackColor = vbRed
varControl.ForeColor = vbWhite
Else
varControl.BackColor = vbGreen
varControl.ForeColor = vbBlack
End If
End If
Next