Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/14.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
Vba 在引用其他图纸上表格的表格中设置ArrayFormula_Vba_Excel - Fatal编程技术网

Vba 在引用其他图纸上表格的表格中设置ArrayFormula

Vba 在引用其他图纸上表格的表格中设置ArrayFormula,vba,excel,Vba,Excel,我想设置数组公式: =VLOOKUP(MID([@[源代码页]];FIND(“.”;[@[源代码页]];1)+1;15);Tbl_PN[[Hostname]:[Allocated on:];COLUMN(Tbl_PN[[[源代码页];[Allocated on:])-2;0) 在表中,但我得到一个错误: 运行时错误1004无法设置的FormulaArray属性 靶场等级 Tbl_PN在另一张表上,我正试图为MULE设置一个数组。顺便说一句,如果我将公式手册复制到工作表中,那么它工作正常;如果我将

我想设置数组公式:

=VLOOKUP(MID([@[源代码页]];FIND(“.”;[@[源代码页]];1)+1;15);Tbl_PN[[Hostname]:[Allocated on:];COLUMN(Tbl_PN[[[源代码页];[Allocated on:])-2;0)

在表中,但我得到一个错误:

运行时错误1004无法设置的FormulaArray属性 靶场等级

Tbl_PN在另一张表上,我正试图为MULE设置一个数组。顺便说一句,如果我将公式手册复制到工作表中,那么它工作正常;如果我将“.formula”行上的公式更改为“=-3”,那么代码运行正常

With Wb.Sheets(Sht1)
    lastrow = .Cells(.Rows.Count, StartCell.Column).End(xlUp).Row
    lastcolumn = .Cells(StartCell.Row, .Columns.Count).End(xlToLeft).Column
    Set TblRange = Range(StartCell, Cells(lastrow, lastcolumn))         ' set range to create new table
    Set ObjTable = .ListObjects.Add(xlSrcRange, TblRange, , xlYes)      ' create new table
    ObjTable.Name = "tbl_" + Sht1                                       ' set table name
    ObjTable.TableStyle = "TableStyleLight9"                            ' set table style"
    ObjTable.ListColumns.Add.Name = "Frame"                             ' add column to table
    ObjTable.ListColumns("Frame").Range.NumberFormat = "General"        ' set format new column to general (other are text)
    ObjTable.ListColumns("Frame").DataBodyRange(1).FormulaArray = "=VLOOKUP(MID([@[Source Sheet]];FIND(""."";[@[Source Sheet]];1)+1;15);Tbl_PN[[Hostname]:[Allocated on:]];COLUMN(Tbl_PN[[#Headers];[Allocated on:]])-2;0)"
End With

更换
带有
。vba中的公式必须是美式英语格式。感谢Scott,这是解决方案,替换后代码运行良好;具有