我发现我的公式中不能有超过255个字符,这是我的VBA代码中的数组公式;但是,我无法弄清楚如何使用替换方法。这是我的数组公式:
{= IF(ISNUMBER('Director File'!$ H $ 11),IF(ISERROR(OFFSET)(INDEX('输入17-1'!$ A $ 2:$ V $ 183,SMALL(IF('输入17- 1'!$ A $ 2:$ A $ 183 ='导演档案'!$ H $ 11,ROW('输入17-1'!$ A $ 2:$ A $ 183)),2),10), - 1,0) ),“”,OFFSET(INDEX('输入17-1'!$ A $ 2:$ V $ 183,小(IF('输入17-1'!$ A $ 2:$ A $ 183 ='导演档案'!$ H $ 11,ROW('输入17-1'!$ A $ 2:$ A $ 183)),2),10), - 1,0)),“”)}
我已经读过你必须在你的替换方法的每个部分都有工作公式;但是,我尝试的一切都不起作用。
非常感谢任何帮助!
我尝试过以下操作但仍无法使其正常工作:
Sub Enter_SellerFormulas()
Dim formulaPart1 As String
Dim formulaPart2 As String
formulaPart1 = "=IF(ISNUMBER('Director File'!$H$11),IF(ISERROR(""X_X_X"")),"")"
formulaPart2 = "OFFSET(INDEX('Inputs 17-1'!$A$2:$V$183,SMALL(IF('Inputs 17-1'!$A$2:$A$183='Director File'!$H$11,ROW('Inputs 17-1'!$A$2:$A$183)),2),10),-1,0)),"",OFFSET(INDEX('Inputs 17-1'!$A$2:$V$183,SMALL(IF('Inputs 17-1'!$A$2:$A$183='Director File'!$H$11,ROW('Inputs 17-1'!$A$2:$A$183)),2),10),-1,0"
With Range("E17")
.FormulaArray = formulaPart1
.Replace "X_X_X", formulaPart2
End With
End Sub
Scotts推荐的新代码:
Sub Enter_SellerFormulas()
Range("E17").Select
ActiveCell.FormulaArray = _
"=IF(ISNUMBER('Director File'!$H$11),IFERROR(OFFSET(INDEX('Inputs 17-1'!$A$2:$V$183,SMALL(IF('Inputs 17-1'!$A$2:$A$183='Director File'!$H$11,ROW('Inputs 17-1'!$A$2:$A$183)),2),10),-1,0),""),"")"