A função DIVIDIRTEXTO (TEXTSPLIT) não consta das bibliotecas do VBA. Como utilizá-la programaticamente?

Anônima
2024-07-12T01:43:37+00:00

A função DIVIDIRTEXTO (TEXTSPLIT) não consta das bibliotecas do VBA. Como utilizá-la programaticamente?

Microsoft 365 e Office | Excel | Para uso doméstico | Windows

Pergunta bloqueada. Essa pergunta foi migrada da Comunidade de Suporte da Microsoft. É possível votar se é útil, mas não é possível adicionar comentários ou respostas ou seguir a pergunta.

0 comentários Sem comentários

2 respostas

Classificar por: Mais útil
  1. Anônima
    2024-07-22T09:25:35+00:00

    Esta resposta foi traduzida automaticamente. Como resultado, pode haver erros gramaticais ou palavras estranhas.

    Olá, Antonio Isidro Gil Graça

    Posso perguntar como está o seu problema?

    Isso ajudou você a resolver o problema?

    Aguardamos sua resposta.

    Felicidades

    Aiden.C - MSFT |Especialista em suporte da comunidade Microsoft

    Esta resposta foi útil?

    0 comentários Sem comentários
  2. Anônima
    2024-07-12T08:00:03+00:00

    Esta resposta foi traduzida automaticamente. Como resultado, pode haver erros gramaticais ou palavras estranhas.

    Olá, Antonio Isidro Gil Graça

    Obrigado por usar os produtos da Microsoft e publicá-los na comunidade.

    No VBA, não há função de divisão direta de texto como a função TEXTSPLIT no Excel, mas você pode usar as funções internas de manipulação de cadeia de caracteres do VBA para obter funcionalidade semelhante. Você pode usar a função Split para dividir uma cadeia de caracteres. Veja a seguir um exemplo que mostra como usar a função Split para dividir uma cadeia de caracteres no VBA:

    Sub SplitTextToCells() 
    
        Dim ws As Worksheet
    
        Dim text As String
    
        Dim delimiter As String
    
        Dim result() As String
    
        Dim i As Integer
    
        Set ws = ThisWorkbook.Sheets("Sheet1")
    
        text = ws.Range("A1").Value
    
        delimiter = ","
    
        result = Split(text, delimiter)
    
        For i = LBound(result) To UBound(result)
    
            ws.Cells(1, i + 2).Value = result(i)
    
        Next i
    
    End Sub   
    

    Neste exemplo:

    text é a cadeia de caracteres a ser dividida, ws é uma referência à planilha atual e o texto de entrada é lido da célula A1.

    O delimitador é um separador, neste caso uma vírgula ",".

    A função Split divide o texto de acordo com o delimitador e retorna uma matriz de cadeias de caracteres como resultado.

    Use as funções LBound e UBound para iterar pela matriz e gerar cada elemento e gravar cada elemento em uma célula começando em B1.

    O efeito é mostrado na imagem:

    Image

    Você pode modificar os valores de texto e delimitador conforme necessário para acomodar diferentes textos e delimitadores. Se você precisar de uma lógica de divisão mais complexa, como separadores de vários caracteres ou expressões regulares, poderá escrever código mais complexo ou usar bibliotecas de terceiros para obter resultados.

    Espero que as informações acima possam ajudá-lo. Sinta-se à vontade para nos enviar uma mensagem se precisar de mais assistência.

    Felicidades

    Aiden.C - MSFT |Especialista em suporte da comunidade Microsoft

    Esta resposta foi útil?

    0 comentários Sem comentários