Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Why doesn't this work:
Private Sub CommandButton1_Click() If ListBox1 = "" Then MsgBox ("True") Else MsgBox ("False") End If End Sub While this does: Private Sub CommandButton1_Click() If ListBox1 < "" Then MsgBox ("True") Else MsgBox ("False") End If End Sub or have I missed something embarrassingly obvious? Cheers Wobbly. |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
A ListBox never equals the empty String. When nothing has been selected, the
ListBox value is Null. Your code would work if you did this... Private Sub CommandButton1_Click() If IsNull(ListBox1) Then MsgBox "True" Else MsgBox "False" End If End Sub However, I think most programmers would check the ListIndex (it's -1 when nothing is selected and the 0-based index otherwise)... Private Sub CommandButton1_Click() If ListBox1.ListIndex = -1 Then MsgBox "True" Else MsgBox "False" End If End Sub Also notice that the argument for the MsgBox subroutine (actually, it's a function, but you are calling it like a subroutine), and this applies to all subroutine calls where the Call keyword is not used, should not be embedded in parentheses (otherwise you would have problems if you had more than one argument). -- Rick (MVP - Excel) "Wobbly" wrote in message ... Why doesn't this work: Private Sub CommandButton1_Click() If ListBox1 = "" Then MsgBox ("True") Else MsgBox ("False") End If End Sub While this does: Private Sub CommandButton1_Click() If ListBox1 < "" Then MsgBox ("True") Else MsgBox ("False") End If End Sub or have I missed something embarrassingly obvious? Cheers Wobbly. |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
you could try
IF Listbox1.ListIndex = -1 Then -1 means nothing selected OR you could use ListCount eg If Listbox1.Listcount=0 then if its zero, then its empty "Wobbly" wrote: Why doesn't this work: Private Sub CommandButton1_Click() If ListBox1 = "" Then MsgBox ("True") Else MsgBox ("False") End If End Sub While this does: Private Sub CommandButton1_Click() If ListBox1 < "" Then MsgBox ("True") Else MsgBox ("False") End If End Sub or have I missed something embarrassingly obvious? Cheers Wobbly. |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Excel - Golf - how to display "-2" as "2 Under" or "4"as "+4" or "4 Over" in a calculation cell | Excel Discussion (Misc queries) | |||
change "true" and "false" to "availble" and "out of stock" | Excel Worksheet Functions | |||
HELP on "left","right","find","len","substitute" functions | Excel Discussion (Misc queries) | |||
Count occurences of "1"/"0" (or"TRUE"/"FALSE") in a row w. conditions in the next | New Users to Excel | |||
If changed array formula reduce ""\""\""\ - signs to #Missing, will it make ... | Excel Programming |