Mesclagem vertical dinâmica de células, em VBA ou macros

Mesclagem vertical dinâmica de células, em VBA ou macros

Estou obtendo dados com uma linha para cada item pedido por pessoa que fez o pedido. Estou tentando consolidar isso em apenas uma linha da pessoa e mesclar os itens pedidos

dados originais em planilha:
dados originais em planilha

O objetivo final dos dados:
O objetivo final dos dados

Olhando sua resposta para ... Macro para mesclar células em uma coluna se as mesmas linhas forem mescladas em uma coluna diferente

Eu tenho uma ideia do que fazer.

Eu poderia primeiro tentar mesclar todos os nomes em uma célula e então, tenho uma situação naquele post acima. Embora eu não tenha certeza de como posso fazer isso. Seria uma cláusula if A1=A2, A1&'', que não está funcionando bem para mim no momento.

Portanto, qualquer ajuda com isso seria ótima.

Responder1

Combinação de UDF& SUBSTITUTEpode resolver o problema:

insira a descrição da imagem aqui

Como funciona:

  • Colocar 0na célula I236e fórmula na célulaI237:

=IF(G236=G237,I236+1,0),preencha-o.

  • PressioneAlt+F11 ouRposso clicar noSaba TAB e cliqueVvisualizar o código paraÓcaneta Editor VB.
  • Copa ePaste este código VBA comoModule.

    Function SingleCellValue(Lookupvalue As String, LookupRange As Range, ColumnNumber As Integer, Char As String)
    
    Dim i As Long
    Dim xRet As String
    For i = 1 To LookupRange.Columns(1).Cells.Count
        If LookupRange.Cells(i, 1) = Lookupvalue Then
            If xRet = "" Then
                xRet = LookupRange.Cells(i, ColumnNumber) & Char
            Else
                xRet = xRet & "" & LookupRange.Cells(i, ColumnNumber) & Char
            End If
        End If
    Next
    SingleCellValue = Left(xRet, Len(xRet) - 1)
    End Function
    
  • Escreva a fórmula na célulaH249:

=SingleCellValue(G249,G236:H246,2,",")

  • Fórmula final na célulaI249:

=SUBSTITUTE(H249, "Cust. Order,", "", 1)

Preencha a fórmula.

Observação

  • Para maior clareza, mais tarde você pode ocultar valores em Cell H249:H251.
  • Ajuste as referências de células na fórmula conforme necessário.

informação relacionada