Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Tópicos relacionados a códigos VBA, gravação de macros, etc.
  • Avatar do usuário
Por EmersonSwistalski
#48901
Bom dia! Sou iniciante em VBA e estou com uma duvida.
Estou tentando atribuir a formula na celula seguinte e sempre obtenho erro, alguem teria alguma solucao com formula parecida para o meu problema? Segue formula que preciso converter para o vba abaixo:

=INDEX(INDIRECT($C$5&"!A3:A33"),7)

ps, meu excel ta em ingles
Por osvaldomp
#48903
Experimente:
Código: Selecionar todos
ActiveCell = "=INDEX(INDIRECT($C$5&""!A3:A33""),7)"
Avatar do usuário
Por Jimmy
Avatar
#48906
Emerson,

Não sei se a causa do erro é isso, mas faço uma observação.

As aspas delimitam os strings, assim,VarA = "CASA" atribui a palavra CASA à variável VarA.

Se você precisar que uma aspa faça parte do conteúdo do string, por exemplo, entre o CA e o SA (assim: CA"SA), se digitar assim VarA = "CA"SA" o VB pensará que a segunda aspa está fechando a primeira, não saberá o que fazer com SA, e achará que a terceira aspa não foi fechado, pois interpretará que a segunda aspa não é parte do texto, e sim um delimitador.

Para contornar isso, você deve usar duas aspas seguidas. Isso indicará ao VB que alí não se trata de um delimitador, mas de um caractere aspa. Ficaria assim: Var = "CA""SA", i isso atribuirá CA"SA à variável VarA.

Se esta mensagem colabora para a solução do problema, peço que dê um Like, clicando no botão com o "positivo", acima e a direita.

Jimmy San Juan
Por EmersonSwistalski
#48908
osvaldomp escreveu:Experimente:
Código: Selecionar todos
ActiveCell = "=INDEX(INDIRECT($C$5&""!A3:A33""),7)"
Jimmy escreveu:Emerson,

Não sei se a causa do erro é isso, mas faço uma observação.

As aspas delimitam os strings, assim,VarA = "CASA" atribui a palavra CASA à variável VarA.

Se você precisar que uma aspa faça parte do conteúdo do string, por exemplo, entre o CA e o SA (assim: CA"SA), se digitar assim VarA = "CA"SA" o VB pensará que a segunda aspa está fechando a primeira, não saberá o que fazer com SA, e achará que a terceira aspa não foi fechado, pois interpretará que a segunda aspa não é parte do texto, e sim um delimitador.

Para contornar isso, você deve usar duas aspas seguidas. Isso indicará ao VB que alí não se trata de um delimitador, mas de um caractere aspa. Ficaria assim: Var = "CA""SA", i isso atribuirá CA"SA à variável VarA.

Se esta mensagem colabora para a solução do problema, peço que dê um Like, clicando no botão com o "positivo", acima e a direita.

Jimmy San Juan
Deu certo colegas, obrigado!
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord