Concatenar range de células preenchidas
Enviado: 20 Nov 2016 às 17:10
Amigos, boa tarde!!!!
Tenho 6 colunas com dados que preciso concatenar (por linha "E:J") colocando "," entre as primeiras céluas preenchidas e "&" antes da última preenchida
ex.; CLARA, Ana, SANTOS, Claudia, LOPES, Marina, OLIVEIRA, Rosa & GOMES, Cris.
Vale mencionar que nem todas as linhas tem todas as células preenchidas, então precisaria concatenar as primeiras com "," e após, encontrar a última celula vazia, retornar uma e colocar "&".
Segue a planilha em anexo
Obrigado
Almir
Obs.:
Se possível, gostaria de adequar este código vba, já que estou usando um form para alimentar a planilha
Function ConcatenarPreenchido(rngBanco As range) As String
' Concatena um conjunto de células, considerando como valores
' apenas aquelas em que exista algum valor preenchido
'Declaração de variáveis
Dim rng As range
'Examina cada célula da faixa especificada
For Each rng In rngBanco
'Se o valor da célula atual contiver texto...
If rng <> vbNullString Then
'Constrói a string concatenada célula-a-célula
ConcatenarPreenchido = ConcatenarPreenchido & " , " & rng
End If
Next rng
'Retorna a string resultante para o Excel
ConcatenarPreenchido = Mid(ConcatenarPreenchido, 4)
End Function
Tenho 6 colunas com dados que preciso concatenar (por linha "E:J") colocando "," entre as primeiras céluas preenchidas e "&" antes da última preenchida
ex.; CLARA, Ana, SANTOS, Claudia, LOPES, Marina, OLIVEIRA, Rosa & GOMES, Cris.
Vale mencionar que nem todas as linhas tem todas as células preenchidas, então precisaria concatenar as primeiras com "," e após, encontrar a última celula vazia, retornar uma e colocar "&".
Segue a planilha em anexo
Obrigado
Almir
Obs.:
Se possível, gostaria de adequar este código vba, já que estou usando um form para alimentar a planilha
Function ConcatenarPreenchido(rngBanco As range) As String
' Concatena um conjunto de células, considerando como valores
' apenas aquelas em que exista algum valor preenchido
'Declaração de variáveis
Dim rng As range
'Examina cada célula da faixa especificada
For Each rng In rngBanco
'Se o valor da célula atual contiver texto...
If rng <> vbNullString Then
'Constrói a string concatenada célula-a-célula
ConcatenarPreenchido = ConcatenarPreenchido & " , " & rng
End If
Next rng
'Retorna a string resultante para o Excel
ConcatenarPreenchido = Mid(ConcatenarPreenchido, 4)
End Function