Notifications
Clear all

Dividir célula em quantas necessárias

6 Posts
3 Usuários
0 Reactions
1,875 Visualizações
(@jorgep-tec)
Posts: 37
Trusted Member
Topic starter
 

Boa tarde pessoal,

Dei uma vasculhada no fórum mas não encontrei exatamente o que preciso...

Preciso de um código pra que pegue a quantidade de caracteres de uma célula e analise, caso a quantidade de caracteres exceda 60 ele divida o conteúdo em quantas células forem necessárias...

Mas com um porém...

Que ele não quebre automaticamente em qualquer lugar, como dividindo uma palavra ao meio e sim encontrando o caracter espaço anterior e nele sim fazer a divisão.

Desde já, obrigado.

 
Postado : 25/05/2015 10:59 am
(@gtsalikis)
Posts: 2373
Noble Member
 

Não é difícil fazer, mas seria melhor vc postar um exemplo. Tem coisas aí que não dá pra saber só pelo que vc explicou. Por exemplo: vai ter que deslocar todas as linhas para baixo? Vai ter que mesclar células? Vai ter que fazer isso com todas as células? E por ai vai...

 
Postado : 25/05/2015 1:31 pm
(@jorgep-tec)
Posts: 37
Trusted Member
Topic starter
 

A célula A1 tem 155 caracteres e quero dividir a cada 60 caracteres. Logo terá que usar 3 linhas, B1, B2, e B3.

Se dividir exatamente em cima do 60° caractere ficaria assim:

B1: "Qual tecnologia é a mais indicada para seu cenário específic"
B2: "o: macros do VBA, suplementos...."

Preciso que nesses casos fique assim:

B1: "Qual tecnologia é a mais indicada para seu cenário"
B2: "específico: macros do VBA, suplementos...."

Não precisa mesclar nem deslocar, nem nada do tipo porque isso adapto aqui.

Desde já, obrigado.

 
Postado : 25/05/2015 2:11 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Gilmar

Pelo exemplo postado, o que ele deseja não é "Dividir Células", o correto é "Separar texto em 2 Células.

Se ele indicasse um critério daria para fazer tranquilamente com fórmulas.

O título postado não tem nada a ver com dúvida, depois eu vou corrigir o título.

[]s

Patropi - Moderador

 
Postado : 25/05/2015 2:32 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

O que você pretende tem nestes links abaixo, de duas formas diferentes, veja se ajuda e consegue adaptar :

Text formatting length
http://www.ozgrid.com/forum/showthread.php?t=36977

Chop text in column to 60 charactersblocks
http://stackoverflow.com/questions/2658 ... tersblocks

Se pesquisar no google pela expressão : "IF Len(Cells(i, 1) > 60 EXCEL VBA" encontrara varios outros resultados.

[]s

 
Postado : 25/05/2015 3:35 pm
(@gtsalikis)
Posts: 2373
Noble Member
 

Experimente:

Sub Dividir_GT()

Dim texto as string
Dim i as long
Dim l as long

texto = range("A1").value
l = 1

while len(texto) > 0
for i = 60 to 1 step -1
if mid(texto, i, 1) = " " then
cells(i, "B").value = mid(texto, 1, i - 1)
texto = mid(texto, i + 1, len(texto))
l = l + 1
exit for
end if
next i
wend

End sub

 
Postado : 25/05/2015 3:46 pm