Fórmulas dentro de uma Array
Enviado: 05 Jul 2021 às 21:57
Boa noite,
Estou aprendendo a usar Array no VBA.
Fiz a seguinte Array com 6 elementos. Cada elemento é uma fórmula a ser aplicada dentro de um For:
Formula = Array( _
"=CONCATENATE([@PERIODO],[@[COD_PART]],[@[CNPJ FILIAL]])", _
"=IFERROR(INDEX(R_150,MATCH([@Combo],R_150[Combo],0),5),"")", _
"=IF(IFERROR(INDEX(R_150,MATCH([@Combo],R_150[Combo],0),7),"")="",IFERROR(INDEX(R_150,MATCH([@Combo],R_150[Combo],0),8),""),IFERROR(INDEX(R_150,MATCH([@Combo],R_150[Combo],0),7),""))", _
"=IFERROR(INDEX(R_150,MATCH([@Combo],R_150[Combo],0),10),"")", _
"=IFERROR(INDEX(_Mu,MATCH([@CODMUN],_Mu[Código UM],0),2),"")", _
"=IFERROR(INDEX(_Mu,MATCH([@CODMUN],_Mu[Código UM],0),3),"")" _
)
Fiz um For para buscar os elementos. A primeira fórmula é aplicada, mas a partir da segunda (2) dá esse erro:
For i = 1 to 6
Cells(1, i) = Formula(i).
Erro em tempo de execução '1004'. Erro definição de aplicativo ou de definição de objeto.
Alguém sabe o que pode ser?
Estou aprendendo a usar Array no VBA.
Fiz a seguinte Array com 6 elementos. Cada elemento é uma fórmula a ser aplicada dentro de um For:
Formula = Array( _
"=CONCATENATE([@PERIODO],[@[COD_PART]],[@[CNPJ FILIAL]])", _
"=IFERROR(INDEX(R_150,MATCH([@Combo],R_150[Combo],0),5),"")", _
"=IF(IFERROR(INDEX(R_150,MATCH([@Combo],R_150[Combo],0),7),"")="",IFERROR(INDEX(R_150,MATCH([@Combo],R_150[Combo],0),8),""),IFERROR(INDEX(R_150,MATCH([@Combo],R_150[Combo],0),7),""))", _
"=IFERROR(INDEX(R_150,MATCH([@Combo],R_150[Combo],0),10),"")", _
"=IFERROR(INDEX(_Mu,MATCH([@CODMUN],_Mu[Código UM],0),2),"")", _
"=IFERROR(INDEX(_Mu,MATCH([@CODMUN],_Mu[Código UM],0),3),"")" _
)
Fiz um For para buscar os elementos. A primeira fórmula é aplicada, mas a partir da segunda (2) dá esse erro:
For i = 1 to 6
Cells(1, i) = Formula(i).
Erro em tempo de execução '1004'. Erro definição de aplicativo ou de definição de objeto.
Alguém sabe o que pode ser?