- 18 Out 2023 às 17:52
#73686
Boa tarde, Pessoal!
Como transcrevo a fórmula abaixo para VBA?
=SE(ÉNÚM(ÍNDICE(TB_Base_Dados[Num];CORRESP([@Ticker];TB_Base_Dados[Ticker];0)));"OK";"")
Fiz parcialmente e ficou dessa maneira:
.Formula = "=ISNUMBER(INDEX(TB_Base_Dados[Num],MATCH([@Ticker],TB_Base_Dados[Ticker],0)))"
E até então funciona, retornando os valores "Verdadeiro" ou "Falso".
Mas quando tento inserir a função "SE" não funciona:
.Formula = "=IF(ISNUMBER(INDEX(TB_Base_Dados[Num],MATCH([@Ticker],TB_Base_Dados[Ticker],0))));""OK"";"""""
MACRO:
With Tab_Base_Dados.ListColumns("Teste").DataBodyRange
'=SE(ÉNÚM(ÍNDICE(TB_Base_Dados[Num];CORRESP([@Ticker];TB_Base_Dados[Ticker];0)));"OK";"")
.Formula = "=IF(ISNUMBER(INDEX(TB_Base_Dados[Num],MATCH([@Ticker],TB_Base_Dados[Ticker],0))));""OK"";"""""
.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
End With
Como transcrevo a fórmula abaixo para VBA?
=SE(ÉNÚM(ÍNDICE(TB_Base_Dados[Num];CORRESP([@Ticker];TB_Base_Dados[Ticker];0)));"OK";"")
Fiz parcialmente e ficou dessa maneira:
.Formula = "=ISNUMBER(INDEX(TB_Base_Dados[Num],MATCH([@Ticker],TB_Base_Dados[Ticker],0)))"
E até então funciona, retornando os valores "Verdadeiro" ou "Falso".
Mas quando tento inserir a função "SE" não funciona:
.Formula = "=IF(ISNUMBER(INDEX(TB_Base_Dados[Num],MATCH([@Ticker],TB_Base_Dados[Ticker],0))));""OK"";"""""
MACRO:
With Tab_Base_Dados.ListColumns("Teste").DataBodyRange
'=SE(ÉNÚM(ÍNDICE(TB_Base_Dados[Num];CORRESP([@Ticker];TB_Base_Dados[Ticker];0)));"OK";"")
.Formula = "=IF(ISNUMBER(INDEX(TB_Base_Dados[Num],MATCH([@Ticker],TB_Base_Dados[Ticker],0))));""OK"";"""""
.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
End With
Editado pela última vez por SandroLima em 18 Out 2023 às 18:30, em um total de 1 vez.