Notifications
Clear all

Concatenar como texto

9 Posts
4 Usuários
0 Reactions
1,298 Visualizações
(@renankaic)
Posts: 7
Active Member
Topic starter
 

Boa tarde a todos! :D

Pessoal estou fazendo um pedido que meu coordenador pediu em algumas planilhas e tive que fazer com macro. Tenho que fazer que o valor final a ser adicionado na célula fique, por exemplo, assim:
5707.365
89375.7865

Estou utilizando o Worksheets(1).Cells(linha, coluna).value = Worksheets(2).Cells(linha, coluna).Value & "." & Worksheets(3).Cells(linha, coluna).Value

Mas na hora que o excel joga o valor na celula fica 5707,3 ou 89375,78. Ele converte o "." para virgula. O que eu teria que fazer para nao deixar isso acontecer?

Obrigado.

 
Postado : 26/08/2016 11:15 am
Wagner Morel
(@wagner-morel-vidal-nobre)
Posts: 0
Illustrious Member
 

renankaic,

Boa tarde!

Não testei...

Tente usar assim:

Worksheets(1).Cells(linha, coluna).value = Str(Worksheets(2).Cells(linha, coluna).Value & "." & Worksheets(3).Cells(linha, coluna).Value)

Desenvolvo pequenas soluções em VBA Excel a valores que variam entre R$ 50,00 a R$ 200,00. Se te interessar, entre no meu instagran (vba_excel_desenvolvimento)

Atenciosamente
Wagner Morel

 
Postado : 26/08/2016 11:28 am
(@renankaic)
Posts: 7
Active Member
Topic starter
 

Wag, boa tarde!
Cara muito obrigado! Mas tentei aqui e não deu certo pois nem sempre vem números na planilha, as vezes também tem letras e outros simbolos, entao deu erro de sintaxe :?
E agora? será que tem outro jeito?

 
Postado : 26/08/2016 11:40 am
Wagner Morel
(@wagner-morel-vidal-nobre)
Posts: 0
Illustrious Member
 

Compacte seu arquivo com .ZIP e anexe aqui mesmo no fórum.

Desenvolvo pequenas soluções em VBA Excel a valores que variam entre R$ 50,00 a R$ 200,00. Se te interessar, entre no meu instagran (vba_excel_desenvolvimento)

Atenciosamente
Wagner Morel

 
Postado : 26/08/2016 11:49 am
(@renankaic)
Posts: 7
Active Member
Topic starter
 

Estou colocando em anexo conforme solicitado. A macro está gravada no arquivo Layout_EAB.xlsm e a macro lê a partir do arquivo EAB.xlsx que veio junto (aponte a ele caso tente rodar a macro). Ah e crie as colunas primeiro para depois clicar para ir o Layout.

Qualquer duvida estou a disposição.

 
Postado : 26/08/2016 11:55 am
DJunqueira
(@djunqueira)
Posts: 772
Prominent Member
 

Não vi código algum na sua planilha .xlsm, mas se vc estiver utilizando o Excel 2013 ou 2016 a melhor ferramenta p/ fazer isso q vc quer é o Power Query / Nova Consulta.

Se sua dúvida foi respondida marque o tópico como RESOLVIDO usando o botão com marca verde.

 
Postado : 27/08/2016 12:13 am
DJunqueira
(@djunqueira)
Posts: 772
Prominent Member
 

Dá uma olhada nesse vídeo q mais ou menos demonstra o potencial do Power Query / Nova Consulta p/ resolver o seu caso.

Se sua dúvida foi respondida marque o tópico como RESOLVIDO usando o botão com marca verde.

 
Postado : 27/08/2016 12:42 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Com relação a sua demanda, o que ocorre é que o VBA entende,para numeros, o ponto como separador decimal, assim ao passar o "valor" à planilha e feita a conversão.
Uma maneira de contornar esse problema, é formatar previamente as colunas afetadas como texto.
Experimente alterara rotina que "cria" as colunas acrescentando a linha
Workbooks("Layout_EAB.xlsm").Worksheets(1).Columns(coluna).NumberFormat = "@"

Do While Tem_Valor = True
    Valor = Workbooks(nomeorigem).Worksheets(1).Range("A" & A)
    Workbooks("Layout_EAB.xlsm").Worksheets(1).Cells(linha, coluna).Value = Valor
    Workbooks("Layout_EAB.xlsm").Worksheets(1).Columns(coluna).NumberFormat = "@"
    A = A + 1

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 27/08/2016 8:44 pm
(@renankaic)
Posts: 7
Active Member
Topic starter
 

Reinaldo

Opa, bom dia. Cara, muito obrigado mesmo. Adicionar esse NumberFormat = "@" foi o que solucionou meu problema.
Valeu pessoal!! :D :D

 
Postado : 29/08/2016 5:38 am