Jump to content
Fórum Script Brasil
  • 0

Ajuda Criação Programa


alfredo
 Share

Question

Bom dia a todos.

Precisava que alguém me ajudasse para fazer um programa.

Eu fiz o seguinte programa para contar os carcteres de uma String:

Option Explicit

'Dim Contador As Integer também podia colocar contador como global

Private Sub Command1_Click()

Dim K As Integer

Dim Contador As Integer

Dim aux1 As Byte

Dim aux2 As Byte

aux1 = Asc(Text2.Text)

If aux1 >= 65 And aux1 <= 90 Then

aux2 = aux1 + 32

Else

If aux1 >= 97 And aux1 <= 122 Then

aux2 = aux1 - 32

Else

aux2 = aux1

End If

End If

Contador = 0

For K = Len(Text1.Text) To 1 Step -1

If Mid(Text1.Text, K, 1) = Chr(aux1) Or (Check1.Value = 1 And Mid(Text1.Text, K, 1) = Chr(aux2)) Then

Contador = Contador + 1

End If

Next

Label4.Caption = Contador

End Sub

Private Sub Command2_Click()

End

End Sub

Private Sub Command3_Click()

Text2.Text = ""

Label4.Caption = ""

End Sub

Private Sub Command4_Click()

Text1.Text = ""

Text2.Text = ""

Label4.Caption = ""

End Sub

Agora, em vez de contar os caracteres, queria que contasse as palavras.

Será que alguém me pode ajudar nisso.

Obrigado

Alfredo Castro

Link to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 0

Salve!

Em um texto temos como separador das palavras o espaço. Então você poderia percorrer o texto (lembrando de remover os espaços das extremidades, ou seja, lembre-se de utilizar a função Trim()) e quando achar um espaço, sabe que percorreu uma palavra.

Após isso, você terá a ocorrência de todos os espaços (dentre as palavras) do texto, basta acrescentar 1 no seu contador para que ele fique com a quantidade exata de palavras existentes!

Agora, uma forma bem simples (porém não aconselhável) seria utilizar a função Split() do VB.

Bom, tente fazer, em caso de dúvida é só falar!

Abraços,

William Rodrigues

Link to comment
Share on other sites

  • 0

Salve!

Claro, posso lhe ajudar sim.

Para fazer percorrendo seria assim:

 
    i = 1
    While (i < Len(Trim(Text1.Text)))
        If Mid(Trim(Text1.Text), i, 1) = " " Then
            palavras = palavras + 1
        End If
        i = i + 1
    Wend
    palavras = palavras + 1
    
    MsgBox "Temos " & palavras & " palavras no TextBox", vbOKOnly
E no caso não aconselhável seria assim;
    palavras = Split(Trim(Text1.Text), " ")
    
    MsgBox "Temos " & UBound(palavras) + 1 & " palavras no TextBox", vbOKOnly

Qualquer coisa é só falar ;)

Abraços,

William Rodrigues

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Forum Statistics

    • Total Topics
      151k
    • Total Posts
      649k
×
×
  • Create New...