![]() |
for each error
I'm getting a variable not defined error using the following code:
Option Explicit Private Sub UserForm_Activate() For Each cell In Range("cpName") If cell.Value < "" Then lstMnemonic.AddItem cell.Value End If Next cell End Sub The same code works to populate another list box. Why am I getting this error? |
for each error
The same code works to populate another list box. Why am I getting this
error? The difference is the "Option Explicit" statement which requires all variables to be declared. Try: Option Explicit Private Sub UserForm_Activate() Dim cell As Range For Each cell In Range("cpName") If cell.Value < "" Then lstMnemonic.AddItem cell.Value End If Next cell End Sub Regards, KL |
for each error
YOu have option explicit at the top of your code which means that you have to
declare all of your variables. That by the way is a good thing and maked debugging a lot easier. To fix the code you need to declare cell as a range object Option Explicit Private Sub UserForm_Activate() dim cell as range 'Here is the range object declaration For Each cell In Range("cpName") If cell.Value < "" Then lstMnemonic.AddItem cell.Value End If Next cell End Sub "xlcharlie" wrote: I'm getting a variable not defined error using the following code: Option Explicit Private Sub UserForm_Activate() For Each cell In Range("cpName") If cell.Value < "" Then lstMnemonic.AddItem cell.Value End If Next cell End Sub The same code works to populate another list box. Why am I getting this error? |
for each error
thanks for the reply. I thought I had used option explicit in the other code
as well so it didn't make sense to me that one would give me the error and the other wouldn't. But as it turns out, I was wrong. I had neglected to include option explicit. THanks again. "KL" wrote: The same code works to populate another list box. Why am I getting this error? The difference is the "Option Explicit" statement which requires all variables to be declared. Try: Option Explicit Private Sub UserForm_Activate() Dim cell As Range For Each cell In Range("cpName") If cell.Value < "" Then lstMnemonic.AddItem cell.Value End If Next cell End Sub Regards, KL |
All times are GMT +1. The time now is 09:26 AM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com