Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Tópicos relacionados a códigos VBA, gravação de macros, etc.
  • Avatar do usuário
#22581
Pessoal, boa noite.

Estou tentando implementar uma função que eu passe uma String para ela e um caracter referencia para separação e ela me retorne uma Array contendo os itens separados e a quantidade de itens. exemplo:
String original = "A casa vermelha"
caracter de referência = " "

retorno desejado:
a(0) = "A"
a(1) = "casa"
a(2) = "vermelha"
quant = 3
Tentei adaptar este código do site http://www.tomasvasquez.com.br/blog/tag ... string-vba
Código: Selecionar todos
Public Function ContaCaracteresNaString(ByVal texto As String, ByVal caracter As String) As Long
     Dim x As Variant
     x = Split(texto, caracter)
     ContaCaracteresNaString = UBound(x)
End Function
 
Public Sub Teste()
     MsgBox ContaCaracteresNaString("janeiro|fevereiro|março|abril|", "|")
End Sub
porém, ainda não consegui.

Alguém me da uma luz, please!
#22594
JCabral, boa tarde.

Fiz uma adaptação da sua planilha para a minha necessidade.
Mesclei com o tutorial que vi no seguinte site http://www.geeksengine.com/article/vba- ... lues2.html
Estou lendo diretamente a lista de dados na folha3

O código final ficou assim:
Código: Selecionar todos
 Public Function separar(ByVal str1 As String, ByVal str2 As String) As Variant
    Dim WrdArray() As String
    WrdArray() = Split(str1, str2)
    separar = WrdArray
End Function
Sub principal()
    Dim arr As Variant
    linhaREF = 1
    While Not IsEmpty(ThisWorkbook.Worksheets("Folha3").Range("A" & linhaREF))
    
        Info = ThisWorkbook.Worksheets("Folha3").Range("A" & linhaREF).Value
        
        arr = separar(Info, " ")
        
        ' Daqui pra baixo posso realizar as comparações do código pré-existente
        For i = 0 To UBound(arr)
            Debug.Print arr(i)
        Next
        
        Debug.Print ""
        
        linhaREF = linhaREF + 1
    Wend
    
End Sub

Grato
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord