【发布时间】:2015-09-05 02:22:55
【问题描述】:
我遇到了一些我找不到正确语法的东西。 我正在处理的代码如下所示:
Public Function Initializecolors()
'initialize the colors by setting them with the help of the webpage:
'http://dmcritchie.mvps.org/excel/colors.htm
'example. Black is the first color
'0(since black is the first index selection) + 1 = 1
Color(0) = 1 'Black
Color(1) = 3 'Red
Color(2) = 4 'Green
Color(3) = 5 'Blue
Color(4) = 7 'Magenta
Color(5) = 9 'Brown
'Study each combobox of colors and if some color
'is selected, initialize it directly to the Indexvariable
Select Case UserForm2.ComboBox7.ListIndex
Case 0
colorComboBoxIndex(0) = Color(0)
Case 1
colorComboBoxIndex(0) = Color(1)
Case 2
colorComboBoxIndex(0) = Color(2)
Case 3
colorComboBoxIndex(0) = Color(3)
Case 4
colorComboBoxIndex(0) = Color(4)
Case 5
colorComboBoxIndex(0) = Color(5)
End Select
Select Case UserForm2.ComboBox8.ListIndex
Case 0
colorComboBoxIndex(1) = Color(0)
Case 1
colorComboBoxIndex(1) = Color(1)
Case 2
colorComboBoxIndex(1) = Color(2)
Case 3
colorComboBoxIndex(1) = Color(3)
Case 4
colorComboBoxIndex(1) = Color(4)
Case 5
colorComboBoxIndex(1) = Color(5)
End Select
Select Case UserForm2.ComboBox9.ListIndex
Case 0
colorComboBoxIndex(2) = Color(0)
Case 1
colorComboBoxIndex(2) = Color(1)
Case 2
colorComboBoxIndex(2) = Color(2)
Case 3
colorComboBoxIndex(2) = Color(3)
Case 4
colorComboBoxIndex(2) = Color(4)
Case 5
colorComboBoxIndex(2) = Color(5)
End Select
Select Case UserForm2.ComboBox10.ListIndex
Case 0
colorComboBoxIndex(3) = Color(0)
Case 1
colorComboBoxIndex(3) = Color(1)
Case 2
colorComboBoxIndex(3) = Color(2)
Case 3
colorComboBoxIndex(3) = Color(3)
Case 4
colorComboBoxIndex(3) = Color(4)
Case 5
colorComboBoxIndex(3) = Color(5)
End Select
Select Case UserForm2.ComboBox11.ListIndex
Case 0
colorComboBoxIndex(4) = Color(0)
Case 1
colorComboBoxIndex(4) = Color(1)
Case 2
colorComboBoxIndex(4) = Color(2)
Case 3
colorComboBoxIndex(4) = Color(3)
Case 4
colorComboBoxIndex(4) = Color(4)
Case 5
colorComboBoxIndex(4) = Color(5)
End Select
Select Case UserForm2.ComboBox12.ListIndex
Case 0
colorComboBoxIndex(5) = Color(0)
Case 1
colorComboBoxIndex(5) = Color(1)
Case 2
colorComboBoxIndex(5) = Color(2)
Case 3
colorComboBoxIndex(5) = Color(3)
Case 4
colorComboBoxIndex(5) = Color(4)
Case 5
colorComboBoxIndex(5) = Color(5)
End Select
End Function
然后将这些值应用于下面设置颜色值的代码
...For j = 7 to 12
If colorComboBoxIndex(j) > -1 Then
...
.Border.ColorIndex = colorComboBoxIndex(j)
....
它的功能是这样的。我不需要调试帮助。只是如何使用 for 循环制作第一个代码块的语法。有艺术的东西:
for j = 0 to 5
Select Case UserForm2.ComboBox(j).ListIndex
我知道这种语法不存在,我尝试了 Me.Controls 的运气,但出现了编译错误。
任何形式的帮助都会受到欢迎。
亲切的问候,
马里奥
p.s Color() 和 coloComboBox() 变量在其他地方被声明为 public
【问题讨论】:
-
您在访问
UserForm2.Controls时遇到了什么错误? -
在使用 UserForm2.Controls 时实际上什么都没有。我怎样才能用我的想法来实现它?