Olá alexzaidan!
Eu também já sinti falta de uma função nativa do Excel que faça o que você descreveu, por isso tratei de correr atrás para desenvolver uma função personalizada, que chamei de VALORESDOVETOR.
O código da função é:
Public Function VALORESDOVETOR(vArray As Variant, _
Optional lSize As Long, _
Optional sSeparator As String = ", ") As Variant
Dim v As Variant
Dim lCount As Long
Dim asOut() As String
If lSize < 0 Then
VALORESDOVETOR = CVErr(xlErrNum)
Exit Function
End If
For Each v In vArray
If v <> "" Then
lCount = lCount + 1
ReDim Preserve asOut(1 To lCount)
asOut(lCount) = v
If lCount = lSize Then Exit For
End If
Next v
VALORESDOVETOR = Join(asOut, sSeparator)
End Function
Você pode adicionar a um módulo do seu arquivo para poder usar na planilha, ou então, você pode adicionar o arquivo xlam anexo através das "Opções do Excel" -> "Suplementes", que desta forma a função vai ficar disponível em qualquer arquivo que você for trabalhar.
Explicando a função, a sintaxe é a seguinte:
VALORESDOVETOR(Intervalo desejado; quantidade de elementos do intervalo que deseja que apareça 'Opcional'; Tipo de separador 'Opcional')
- Se não preencher o segundo argumento da função que é a quantidade de elementos, a função irá trazer todos elementos do intervalo selecionado;
- Se não colocar algum separador (sempre entre aspas dupla), a função usará vírgula como padrão.
Crédito especial ao meu amigo Felipe Gualberto (www.ambienteoffice.com.br) que me deu a melhor solução na época que estava desenvolvendo esta idéia de UDF que funcionasse tanto para intervalos como para vetores calculados pelo gerenciador de nomes do Excel.
Abraços!
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 : 13/04/2015 7:00 pm