Respondendo sua pergunta, diretamente, assim:
ActiveWorkbook.Names.Add Name:="teste", RefersToR1C1Local:= LocalCel
Esse LocalCel tem que ter um intervalo válido que comece com o sinal de igual... neste caso a célula deveria conter: =Mailing!$A$7:$A$8
Mas ela não contém isso, até pq se vc deixar assim, a fórmula vai funcionar e vai dar erro pq é uma matriz. Vc poderia colocar assim:
="=Mailing!$A$7:$A$8"
Pq daí, o resultado da fórmula, é uma fórmula válida... a alternativa, seria mexer no seu código e meter um = no refersto, assim:
ActiveWorkbook.Names.Add Name:="teste", RefersToR1C1Local:= "=" & LocalCel
MAS, eu tenho uma ideia melhor... Leia abaixo:
Pq vc não usa um intervalo dinâmico feito com desloc()?
Daí vc nunca mais vai precisar se preocupar com recriar o nome...
Manda por favor um print dessa coluna Mailing!$A$7:$A$15...
Quero ver o que tem acima e abaixo dela... para poder montar o desloc() pra vc...
Mas de cara, se estiver em branco logo acima e sua lista não tiver título... use:
=DESLOC(Mailing!$A$7;0;0;CONT.VALORES(Mailing!$A:$A);1)
Deu pra entender ?
A explicação, aqui ó:
viewtopic.php?t=98#p250
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Postado : 01/06/2017 9:41 am