Userform_Initialize Пустая строка при повторном открытии

Я установил пользовательскую форму VBA (в текстовом документе) при инициализации, она настроена так, что поле со списком (MoniesInDescription) заполняется через внешний файл Excel.

Все работает нормально, за исключением того, что я сохранил свой документ и снова открываю, если я пытаюсь запустить код, я получаю «Ошибка выполнения 94: недопустимое использование нуля». Я не менял никаких данных.

У меня было это пару раз с кодами Userform_Initialize, внезапно не работало, я не уверен, почему?

Private Sub UserForm_Initialize()


Dim statement As String
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset

Set conn = New ADODB.Connection
conn.ConnectionString = _
    "Provider=Microsoft.Jet.OLEDB.4.0;" & _
    "Data Source=C:\Users\m\Desktop\csvalues.xls;" & _
              "Extended Properties='Excel 8.0;HDR=Yes'"
conn.Open

statement = "SELECT [Sale Monies In] FROM [Description$]"

Set rs = conn.Execute(statement, , adCmdText)

 With MoniesInDescription
 Do Until rs.EOF
.AddItem CStr(rs.Fields("Sale Monies In").Value)
 rs.MoveNext
 Loop
 End With

 rs.Close
 conn.Close

 End Sub

person bssm    schedule 14.03.2015    source источник
comment
попробуйте .AddItem CStr(rs.Fields("SaleMonies").Value)   -  person Tim Williams    schedule 14.03.2015
comment
Я не понимаю тебя. Что вы имеете в виду под параметрами настройки для чисел и добавлением любого типа данных в диапазон? Приведите пример.   -  person Maciej Los    schedule 15.03.2015


Ответы (1)


Попробуйте использовать

.AddItem CStr(rs.Fields('" & SaleMonies & "').Value)

Я надеюсь, что он соответствует вашим требованиям.

person SriLaks    schedule 15.03.2015