Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel Userform_在重新打开时初始化空字符串_Excel_Vba_Adodb - Fatal编程技术网

Excel Userform_在重新打开时初始化空字符串

Excel Userform_在重新打开时初始化空字符串,excel,vba,adodb,Excel,Vba,Adodb,我在初始化时设置了一个VBA用户表单(在word文档中),它被设置为通过外部Excel文件填充组合框(MoniesInDescription) 它可以正常工作,除非在我保存了文档并重新打开后,如果我尝试运行我得到的代码“运行时错误94:无效使用Null”。我没有更改任何数据 我在Userform_初始化代码时遇到过几次这样的情况,突然不起作用,我不知道为什么 Private Sub UserForm_Initialize() Dim statement As String Dim conn

我在初始化时设置了一个VBA用户表单(在word文档中),它被设置为通过外部Excel文件填充组合框(MoniesInDescription)

它可以正常工作,除非在我保存了文档并重新打开后,如果我尝试运行我得到的代码“运行时错误94:无效使用Null”。我没有更改任何数据

我在Userform_初始化代码时遇到过几次这样的情况,突然不起作用,我不知道为什么

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
试用


.AddItem CStr(rs.Fields(“&saleamounts&“).Value)
试试
.AddItem CStr(rs.Fields(“&saleamounts”).Value)
我不明白你的意思。“数字设置参数”和“向范围添加任何类型的数据”是什么意思?举个例子。