Recommended Posts

Peço aos amigos forenses que me ajudem...

 

PRECISO JUNTAR ESSES NÚMEROS QUE ESTÃO NA IMAGEM ABAIXO, MAS PRECISA SER NA ORDEM QUE ELES ESTÃO. OBEDECENDO

A ORDEM QUE APARECE.     4 16 23 11 17 14 15 19 20 13  3    PODE SER SEPARADO POR ESPAÇO OU TAB.

image.png.72dff05800d9f5c8e8398babdc5c9783.png

 

Agradeço muito quem puder pelo menos tentar me ajudar. 

Spoiler
      4                       16             23    
                                          22      
                                                 
                    11           17                
                                                 
                          14                      
                                                 
                            15       19 20          
                                                 
                                                 
                        13                        
                                                 
                                                 
    3                                            

FOCO e sorte!

Share this post


Link to post
Share on other sites

@NandoADM

Pelo que entendi, ex o numero 4 pertence a uma celula, o 16 esta em outra celula e assim por diante.....minhas perguntas: qual a amplitude dessa matriz em numero de linhas e colunas?as outras celulas estão vazias ou contem alguma formula? pergunto pois acho que somente com uma macro para agrupar esses valores....

Share this post


Link to post
Share on other sites

Segue uma dica das boas....uma UDF para fazer esse serviço para vc! UDF está no spoiler

Parâmetros para utilização da UDF(formula definida pelo usuário)

- 1º criterio = qual delimitador entre valores? use espaço,traço....usei espaço

- 2º criterio = ignorar vazios "Falso"

- 3º criterio = linhas que quer agrupar " vá selecionando as linhas completas e ele ignorara as celulas vazias"

Se tiver o excel 2016 essa formula deve estar embutida.

image.thumb.png.102c9aa7b04dbca14c114ec640163362.png

 

Spoiler

Public Function UnirTexto(ByVal Delimitador As String, _
                          ByVal IgnorarVazios As Boolean, _
                          ParamArray Celulas() As Variant) As Variant
On Error GoTo TratarErro
Dim Intervalo   As Variant
Dim Resultado   As String
Dim i           As Long
Dim j           As Long
Dim k           As Long
   
    If UBound(Celulas, 1) < LBound(Celulas, 1) Then
        UnirTexto = VBA.Conversion.CVErr(xlErrValue)
        Exit Function
    End If
   
    For i = LBound(Celulas, 1) To UBound(Celulas, 1) Step 1

        If VBA.Information.IsArray(Celulas(i)) Then
       
            Intervalo = Celulas(i)
            For j = LBound(Intervalo, 1) To UBound(Intervalo, 1) Step 1
                For k = LBound(Intervalo, 2) To UBound(Intervalo, 2) Step 1
                    If Not VBA.Information.IsError(Intervalo(j, k)) Then
                        If Not VBA.Strings.Trim(Intervalo(j, k)) = vbNullString Then
                            Resultado = Resultado & Delimitador & Intervalo(j, k)
                        End If
                    End If
                Next k
               
            Next j
           
        Else
       
            If Not VBA.Information.IsError(Celulas(i)) Then
                If Not VBA.Strings.Trim(Celulas(i)) = vbNullString Then
                    Resultado = Resultado & Delimitador & Celulas(i)
                End If
            End If
           
        End If
       
    Next i

    If VBA.Strings.Len(Resultado) > VBA.Strings.Len(Delimitador) Then
        Resultado = VBA.Strings.Right(Resultado, VBA.Strings.Len(Resultado) - VBA.Strings.Len(Delimitador))
    End If
    UnirTexto = Resultado
    Exit Function
TratarErro:
    UnirTexto = VBA.Conversion.CVErr(xlErrValue)
End Function

Espero ter ajudado!

 

 

  • Like 2

Share this post


Link to post
Share on other sites

@San eu tbm pensei em função personalizada , mas pelas postagens anteriores ele não gosta de macros
acho que a minha é parecida com a sua, mas chamo de concatenar tudo já ignora vazios

  • Like 2

Share this post


Link to post
Share on other sites
Function Concatenar_tudo(Ranges As Range, Optional ByVal Separador As String, Optional ByVal Formato As String)
     ss = Ranges.Value2
     If IsArray(ss) Then
          lt = UBound(ss, 1)
          ct = UBound(ss, 2)
          T = ct * lt     '- 1
          For L = 1 To lt
               For c = 1 To ct
                    n = ss(L, c)
                    If n <> "" Then
                    If Formato <> "" Then n = Format(n, Formato)
                    If nn < T Then said = said & n & Separador Else said = said & n
                    End If
               Next
          Next
          Concatenar_tudo = said
     Else
          If Formato <> "" Then ss = Format(ss, Formato)
          Concatenar_tudo = ss
     End If
End Function

=Concatenar_tudo(T6:AG10;" ")

se quiser formatar as dezenas para 2 casas é
=Concatenar_tudo(T6:AG10 ; " " ; "00")

 

 

 

  • Like 2

Share this post


Link to post
Share on other sites

@sorte com estudo ss bem, para mim funciona, pq não usar?
fora que se eu for montar uma formulas para essas questões complexas alem de levar um tempão montado ainda ficam pesando a planilha
com vba pelo menos eu consigo montar em questão de minutos e funciona muito bem,

  • Like 2

Share this post


Link to post
Share on other sites

@Omesmo pelos docs que já li,  da versão do 2016 e acima(eu uso 2010)já tem isso como uma formula (unirtexto) embutida no próprio excel :ph34r:

  • Like 1

Share this post


Link to post
Share on other sites
Posted (edited)
7 horas atrás, NandoADM disse:

Peço aos amigos forenses que me ajudem...

 

PRECISO JUNTAR ESSES NÚMEROS QUE ESTÃO NA IMAGEM ABAIXO, MAS PRECISA SER NA ORDEM QUE ELES ESTÃO. OBEDECENDO

A ORDEM QUE APARECE.     4 16 23 11 17 14 15 19 20 13  3    PODE SER SEPARADO POR ESPAÇO OU TAB.

image.png.72dff05800d9f5c8e8398babdc5c9783.png

 

Agradeço muito quem puder pelo menos tentar me ajudar. 

  Mostrar conteúdo oculto
      4                       16             23    
                                          22      
                                                 
                    11           17                
                                                 
                          14                      
                                                 
                            15       19 20          
                                                 
                                                 
                        13                        
                                                 
                                                 
    3                                            

FOCO e sorte!

@NandoADM Eu utilizei uma vez , mas os números ficam separados na mesma linha e coluna individualmente,vai depender da versão do Excel que você utiliza. Ex.: vou considerar que sua planilha vai de A1: O14.  Digitar na célula Q1 =SEERRO(MENOR($A$1:O$14;COL(A1));" ") . Agora  na célula AD1  digitar TRANSPOR(MODO.MULT(A1:O14;Q1:AB1) e CRTL + SHIFT + ENTER. Esta fórmula vai considerar a ordem conforme a sua  imagem acima. Vai ficar assim: na célula AD1 = 4 em AE1 =16 e assim por diante e obedecendo  a ordem que aparece.

Edited by Pataca
  • Like 1

Share this post


Link to post
Share on other sites

@NandoADMTalvez ajude: =CONCATENAR(A1;" ";B1;" ";C1;" ";D1;" ";E1;" ";F1;" ";...

As "aspas" é pra separar as células, ou coloque qualquer outro símbolo.

  • Like 1

Share this post


Link to post
Share on other sites
4 horas atrás, NandoADM disse:

Peço aos amigos forenses que me ajudem...

 

PRECISO JUNTAR ESSES NÚMEROS QUE ESTÃO NA IMAGEM ABAIXO, MAS PRECISA SER NA ORDEM QUE ELES ESTÃO. OBEDECENDO

A ORDEM QUE APARECE.     4 16 23 11 17 14 15 19 20 13  3    PODE SER SEPARADO POR ESPAÇO OU TAB.

image.png.72dff05800d9f5c8e8398babdc5c9783.png

 

Agradeço muito quem puder pelo menos tentar me ajudar. 

  Mostrar conteúdo oculto
      4                       16             23    
                                          22      
                                                 
                    11           17                
                                                 
                          14                      
                                                 
                            15       19 20          
                                                 
                                                 
                        13                        
                                                 
                                                 
    3                                            

FOCO e sorte!

@NandoADM Só consigo fazendo linha por linha, então se for muitas linhas nem compensa. Se fosse só 14 como essas daí que vc mostrou até daria pra embutir numa fórmula, mas se for mais linhas, esquece.

  • Like 1

Share this post


Link to post
Share on other sites
Posted (edited)

Olá Nando,

 

As opções apresentadas são ótimas e todas devem ser úteis para a sua solução, mais simples sugiro;

 

Apenas usar o simbolo "&"  a cada linha em uma coluna;

 

Com isso depois de totalizar cada linha basta concatenar cada uma das linhas, com o mesmo, smbolo, assim você terá em apenas uma linha toda a sequência, é bastante simples, mas também funciona, e as vezes dependendo do que você quer e como está sua planilha uma coisinha simples, resolve.

 

Pode também usar =CONCAT(.

 

São formas simples mas funcionais, dependendo da versão que usa, estão disponível outras formas.

 

 

Edited by TAS
  • Like 1

Share this post


Link to post
Share on other sites
16 horas atrás, Omesmo disse:

 

Apliquei a função e ficou ótimo... Mutio obrigado.

  • Like 1

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.