Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/23.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/15.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 在组合框中添加项目_Excel_Vba - Fatal编程技术网

Excel 在组合框中添加项目

Excel 在组合框中添加项目,excel,vba,Excel,Vba,我试图从保存在路径“C:\Users\se72497\Desktop”中的文件中添加项目,该路径在名为“departmentos”的工作表的第一列中包含一系列我要添加到组合框中的值 我的组合框接收部门名称 Private Sub UserForm_Initialize() Dim filename As Workbook Set filename = Workbooks.Open("C:\Users\se72497\Desktop\Tablas_Macro.xls

我试图从保存在路径“C:\Users\se72497\Desktop”中的文件中添加项目,该路径在名为“departmentos”的工作表的第一列中包含一系列我要添加到组合框中的值

我的组合框接收部门名称

Private Sub UserForm_Initialize()
        Dim filename As Workbook
        Set filename = Workbooks.Open("C:\Users\se72497\Desktop\Tablas_Macro.xlsx")
        With filename.Sheets("Departamentos")
            dept.List = Range("A2", .Range("A" & Rows.Count).End(xlUp).Value)
        End With
End Sub
我尝试执行此代码,但它返回运行时错误:


为什么vba返回此错误?

值位于错误位置。(或者你可以说括号放错地方了)。纠正这一点,您必须:

.Range("A2", .Range("A" & Rows.Count).End(xlUp)).Value
对于当前代码,
.Value
范围内
调用,因此您尝试使用单元格的值,而不是单元格本身作为第二个参数

你想把它放在外面

否则,如果最后一个单元格的值是“foo”,那么您的代码相当于

 Range("A2", "foo")

这肯定不是您想要的。

因此,当您单击pn时,您的组合框数据将被加载

'前置要求使用变量rstart命名单元格A2

私有子用户表单_初始化()

函数输出: 设置ws=Nothing

出口接头

错误处理: MsgBox“发生以下错误:”&Err.Description,vbCritical,“error” 恢复函数输出

 End Sub

.Range(“A”&Rows.Count).End(xlUp).Value
-
.Value
不应在括号内。您正试图使用单元格的
,而不是单元格本身,作为
范围
调用的第二个参数。您可以编写代码以查看如何编写它的示例吗?此代码存在一些问题。如果combobox没有值,您将得到一个msgbox,它说:选择要继续的值,然后另一个msgbox说:已完成,没有错误。另外,
sStart
是命名范围吗?看不到OP在哪里指定了那个?您没有正确格式化代码,因此很难阅读是的,只有选择下拉值才能进入下一级,这就是我添加该行的原因。对于命名范围,我在代码和注释中提到了作为先决条件。我的编码方式通常是使用nming变量并继续。请在看不清楚的情况下降级
 End Sub