Notifications
Clear all

sera que existe esta macro ?

6 Posts
4 Usuários
0 Reactions
1,172 Visualizações
 km01
(@km01)
Posts: 2
New Member
Topic starter
 

oi boa tarde gostaria de saber se existe esta macro ?

vou digitar uma frase:

03 locos + 15 plat vp + 25 gondolas vtu + 23 hne gvg

e ela deve ficar assim na outra linha:

23 hne gvg + 25 gondolas vtu + 15 plat vp + 03 locos

é possivel fazer isto ?

valeuuu

 
Postado : 16/04/2015 2:00 pm
Issamu
(@issamu)
Posts: 605
Honorable Member
 

Se não existir, você pode criá-la!

Mas sua pergunta está muito aberta, precisa detalhar melhor e se for o caso, colocar um modelo do seu arquivo compactado.

Por exemplo, você precisa descrever melhor onde vai ser digitado isso? Vai ser numa célula específica, num userform?? A frase sempre vai ter este padrão? Você quer simplesmente inverta os elementos da soma ou quer que sempre tenha este padrão de ordenação hne gvg, gondolas vtu, plat vp e locos?? Você quer que a macro sobrescreva no local onde você inseriu a frase ou crie a nova sentença em outro lugar??

Viu quantas dúvidas e possivelmente se alguém começar a desenvolver este código a sério surgirão mais dúvidas..

Abs!

Rafael Issamu F. Kamimura
Moderador Oficial Microsoft Community - MCC (Contribuidor do Microsoft Community)
http://zip.net/bjrt0X - http://zip.net/bhrvbR
Foi útil? Clique na mãozinha
Conheça: http://excelmaniacos.com/

 
Postado : 16/04/2015 2:27 pm
 km01
(@km01)
Posts: 2
New Member
Topic starter
 

Boa noite,

Em uma celular qualquer, por exemplo celula A1, vou digitar uma frase qualquer:

"o sapo roeu a roupa da garota"

E na Celula B1 ele ira retornar a frase ordenada da seguinte maneira:

"garota da roupa a roeu sapo o".

Preciso que uma linha seja escrita de traz pra frente. Uma coisa do meu serviço ( ferrovia vcs nao irao entender ), ao inves de a pessoa digitar de traz pra frente , em uma linha ela digita na maneira normal e na outra linha onde eu quero que ela apareça em um layout, ira aparecer de traz pra frente.

Ex:

linha 12kv: 03 locomotivas + 04 plataformas da vp + 25 britas valadares + 01 gondola rep + 02 hne da fca

e no layout ( coisa do meu serviço ), apareçe assim:

02 hne da fca + 01 gondola rep + 25 britas valadares ......

obs: a frase nem sempre sera essa, isso sao vagoes ou trens, eu posso escrever qualquer coisa que quiser...

se eu so digitar na linha 12kv: 03 plataformas da frota 17411, ela apareçera assim: 03 plataformas da frota 17411...

o que separa um vagão do outro é o simbolo + ou # corte # .

entenderam ?

 
Postado : 16/04/2015 7:46 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Não sei bem se é o que precisa, mas de uma olhada no exemplo do site abaixo:

funcao texto retorna texto invertido
http://www.microsoftexcel.com.br/index. ... rtido.html

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

 
Postado : 16/04/2015 9:08 pm
(@edcronos)
Posts: 1006
Noble Member
 

não creio que oq ele queira seja texto invertido

parece algo como separar o texto a parti de um identificador
adicionar em um array
e inverter a direção

ficando mais ou menos assim

Public Function inverts(teXtos As String, Sparador As String)
Dim partesTs() As String
partesTs() = Split(teXtos, Sparador)
strgiv = partesTs(UBound(partesTs))
    For c = UBound(partesTs) - 1 To LBound(partesTs) Step -1
      strgiv = strgiv & Sparador & partesTs(c)
      
    Next
inverts = strgiv

End Function

modo de usar

em L4 coloque
03 locos + 15 plat vp + 25 gondolas vtu + 23 hne gvg

e em qualquer celula use a função
=inverts(L4;"+")

e vai aparecer
23 hne gvg+ 25 gondolas vtu + 15 plat vp +03 locos
precisa de uns ajustes mais os feras aí de cima são melhores que eu

Somente é impossíveis até que alguém faça
A logica está presa na irracionalidade humana, e morta nos que se consideram donos da verdade.

"ALGUM MODERADOR ME EXPULSE DO FÓRUM POR FAVOR"

 
Postado : 16/04/2015 9:50 pm
(@edcronos)
Posts: 1006
Noble Member
 

pela segunda descrição acho que a função vai te atender sim

é só prestar atenção no separador

=inverts(L4;"+")

L4 é a celula onde está a frase
"+" no caso o + é o separador que determina onde vai ser a quebra
na frase que coloquei para aparecer corretamente teria que ser com espaço " + "
pq eu fiz a função adicionar o separador de volta na frase

Somente é impossíveis até que alguém faça
A logica está presa na irracionalidade humana, e morta nos que se consideram donos da verdade.

"ALGUM MODERADOR ME EXPULSE DO FÓRUM POR FAVOR"

 
Postado : 17/04/2015 10:42 am