multiselect listbox backcolor
Thanks Dave - and not too much code. Works like a charm.
--
russ
"Dave Peterson" wrote:
Not too much code:
Option Explicit
Private Sub CommandButton1_Click()
Dim myArr() As Boolean
Dim iCtr As Long
ReDim myArr(0 To Me.ListBox1.ListCount - 1)
For iCtr = 0 To Me.ListBox1.ListCount - 1
myArr(iCtr) = Me.ListBox1.Selected(iCtr)
Next iCtr
Me.ListBox1.BackColor = vbRed
For iCtr = 0 To Me.ListBox1.ListCount - 1
Me.ListBox1.Selected(iCtr) = myArr(iCtr)
Next iCtr
End Sub
'for testing
Private Sub UserForm_Initialize()
Dim iCtr As Long
With Me.ListBox1
.MultiSelect = fmMultiSelectMulti
For iCtr = 1 To 10
.AddItem iCtr
Next iCtr
End With
End Sub
Russ wrote:
I have a form with several textboxes, comboboxes and multiselect listboxes.
I would like to change the backcolor of each without changing the value in
each. A simple statement like:
Me.textbox1.backcolor = VbRed changes the backcolor of textboxes without
changing the textbox.value
Me.combobox1.backcolor = VbRed changes the backcolor of comboxes without
changing the combobox.value
However, Me.listbox1.backcolor = VbRed changes the backcolor of multiselect
listboxes but also resets the listbox1 to no selections.
Does anyone know a way to change the color of a multiselect listbox and keep
its selections without a lot of code to remember the array settings?
--
russ
--
Dave Peterson
|