无法设置DropDown类的ListFillRangeProperty

我有一个Excel工作簿已经工作,但今天早上已经算了一个错误。

我得到的错误信息是,

运行时错误1004
无法设置DropDown类的ListFillRangeProperty

下面是我的代码 – 错误发生在ws.DropDowns("DropDownStart")

DropDownStart和DropDownEnd是我的工作表上的下拉列表的正确名称,所以不知道是什么导致了这个错误。 当我debugging打印我得到的名字

mysheetName!$A$2:$A$338

这是正确的,所有单元格都包含date。 所以有点卡住了!

 Dim ws As Worksheet Dim wsTime As Worksheet Set wsTime = ThisWorkbook.Sheets(WSTSJPM) Set ws = ThisWorkbook.Sheets(WSCHARTS) ' get last date Dim lRow As Long lRow = wsTime.Range("A65536").End(xlUp).Row ws.Select ws.DropDowns("DropDownStart").ListFillRange = wsTime.Name & "!" & wsTime.Range("A2:A" & lRow).Address ws.DropDowns("DropDownEnd").ListFillRange = wsTime.Name & "!" & wsTime.Range("A2:A" & lRow).Address 

更新意见

我可以手动更改下拉菜单,代码也可以正常更改。 工作簿不被共享。

工作表名称中不包含空格。

我相信我应该在填充范围内使用“=”,除非你知道另一种方法?

DropDown是types列表框的表单控件,位于我的工作表上

另一个问题看起来像表名没有引号。 这段代码似乎适用于我

 Sub populatecombobox() Dim ws As Worksheet Dim wsTime As Worksheet Dim lRow As Long Set wsTime = Sheets("WSTSJPM") Set ws = Sheets("WSCHARTS") With wsTime lRow = .Cells(Rows.Count, "A").End(xlUp).Row End With ws.DropDowns("DropDownStart").ListFillRange = "WSTSJPM!$A$2:$A$" & lRow ws.DropDowns("DropDownEnd").ListFillRange = "WSTSJPM!$A$2:$A$" & lRow End Sub