MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


3 participantes

    [Resolvido]Função String + numero

    avatar
    ivont
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4
    Registrado : 13/06/2011

    [Resolvido]Função String + numero Empty Função String + numero

    Mensagem  ivont 22/6/2011, 14:33

    Boas,
    Estou a frequentar uma disciplina na faculdade em que abordamos access e vba e gostaria de saber se alguém me pode ajudar com um problema que não estou a conseguir resolver.Passo a citá-lo:

    "Pretende-se escrever uma função em vba, que recebe como parâmetros um numero("comp") e uma frase ("frase") e retorna uma string composta pelas palavras da frase original,separadas por um espaço,cujo o comprimento seja igual ou superior a comp."

    Obrigado pela atenção
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Função String + numero Empty Re: [Resolvido]Função String + numero

    Mensagem  JPaulo 22/6/2011, 15:45

    Olá Ivo, seja bem vindo ao fórum;

    Não sei se é isto que pretende, mas vamos lá;


    Public Function SeparaLetras(ByVal strFrase As String) As String
    'By JPaulo ® Maximo Access
    Dim comp As Integer
    Dim strResultado As String
    'variavel comp define o comprimento do espaço entre letras
    comp = 2
    'inicia com a variavel do resultado vazia
    strResultado = ""
    For i = 1 To Len(strFrase)
    'percorre letra a letra dentro da string e adiciona o espaço da variavel
    strResultado = strResultado & Mid(strFrase, i, 1)
    If i < Len(strFrase) Then strResultado = strResultado & Space(comp)
    Next i
    SeparaLetras = strResultado
    End Function



    Pode testar abrindo a janela immediate e digitar;

    ?SeparaLetras("Maximo Access")

    Resultado:

    M a x i m o A c c e s s



    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Função String + numero Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Função String + numero Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Função String + numero Folder_announce_new Instruções SQL como utilizar...
    avatar
    ivont
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4
    Registrado : 13/06/2011

    [Resolvido]Função String + numero Empty Re: [Resolvido]Função String + numero

    Mensagem  ivont 22/6/2011, 16:17

    Antes de mais ,obrigado pela a atenção e pela boas-vindas. Acerca de um mês que sigo o vosso forum e outros forums relacionados com o Access e neste período notei que o vosso fórum deve ser dos mais organizados e com as pessoas mais competentes de todos eles. Por isso queria-vos congratular por esses factos.

    Em relação à tua solução não era bem isso que eu queria. O que eu quero é que uma função leia uma frase e me retorne somente as palavras que são maiores ou iguais do que um numero especificado por o utilizador(comprimento de cada palavra).

    Por exemplo:

    Frase: "O João foi à Rua buscar Leite"
    Numero especificado por um utilizador: 4

    Resultado: "João buscar Leite"

    Ou seja as palavras O, foi, à e Rua desaparecem do resultado porque o comprimento destas é menor que o numero especificado pelo utilizador que é 4.

    PS: Eu sei que esta função não têm sentido prático nenhum mas gostaria de a saber resolver uma vez que esta função já saiu em exame numa alínea.

    Obrigado novamente e os Melhores Cumprimentos
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8496
    Registrado : 05/11/2009

    [Resolvido]Função String + numero Empty Re: [Resolvido]Função String + numero

    Mensagem  Alexandre Neves 22/6/2011, 17:12

    oh ivont

    mas não seria melhor aprender?
    Se aprender só custa uma vez, se não aprender vai depender sempre dos outros.
    avatar
    ivont
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4
    Registrado : 13/06/2011

    [Resolvido]Função String + numero Empty Re: [Resolvido]Função String + numero

    Mensagem  ivont 22/6/2011, 17:24

    Sim eu sei ....Mas não estaria a pôr aqui este tópico sem pelo menos tentar resolve-lo eu. Se reparares na minha primeira mensagem eu digo que não consigo resolver este problema. Durante este ultimo semestre tive que desenvolver uma base de dados complexa na disciplina da faculdade e acompanhei de perto o vosso site com intuito de me auto-instruir em access e vba. Durante este mês todo nunca postei nada aqui, porque compartilho da tua opinião, para aprender deve ser sempre por nós e em ultimo caso devemos pedir ajuda. Já tentei resolver esta função mas não obtive os resultados que pretendi e por esse motivo em ultima instância recorri a vocês, porque como já referi, vocês são do mais competente que já vi em fóruns de access
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Função String + numero Empty Re: [Resolvido]Função String + numero

    Mensagem  JPaulo 22/6/2011, 17:42

    Public Function SeparaPalavras(ByVal strFrase As String) As String
    'By JPaulo ® Maximo Access
    Dim comp As Integer

    'variavel comp define o comprimento da palavra
    comp = 4

    If strFrase = "" Or comp < 1 Then
    SeparaPalavras = strFrase
    Exit Function
    End If

    'Se a string é menor do que o comp, retorne "" (vazio)
    If Len(strFrase) < comp Then
    SeparaPalavras = ""
    Exit Function
    End If

    Dim strPalavra As String, strRestantes As String, strIndex As Integer
    strPalavra = ""
    strRestantes = ""

    'Remove espaços no início e no final da string
    strFrase = Trim(strFrase)

    'Procura a primeira palavra
    strIndex = InStr(strFrase, " ")
    If strIndex > 0 Then
    strPalavra = Mid(strFrase, 1, strIndex - 1)
    strRestantes = Trim(Mid(strFrase, strIndex + 1))
    Else
    strPalavra = strFrase
    strRestantes = ""
    End If

    If strPalavra = "" And strRestantes = "" Then
    SeparaPalavras = ""
    Exit Function
    End If

    'Verifiqua se há tamanho da palavra a retornar ou se existem mais
    If Len(strPalavra) >= comp Then
    If strRestantes = "" Then
    SeparaPalavras = strPalavra
    Else
    SeparaPalavras = Trim(strPalavra & " " & SeparaPalavras(strRestantes))
    End If
    Else
    If strRestantes = "" Then
    SeparaPalavras = ""
    Else
    SeparaPalavras = Trim(SeparaPalavras(strRestantes))
    End If
    End If
    End Function



    Pode testar abrindo a janela immediate e digitar;

    ?SeparaPalavras("João vai à escola")

    Resultado:

    João escola



    Última edição por JPaulo em 22/6/2011, 19:55, editado 1 vez(es)


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Função String + numero Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Função String + numero Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Função String + numero Folder_announce_new Instruções SQL como utilizar...
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8496
    Registrado : 05/11/2009

    [Resolvido]Função String + numero Empty Re: [Resolvido]Função String + numero

    Mensagem  Alexandre Neves 22/6/2011, 17:45

    Estava a criar função. O Grande JPaulo foi mais rápido. Para melhorar, retire a definição de comp na função e coloque-o em argumento.
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Função String + numero Empty Re: [Resolvido]Função String + numero

    Mensagem  JPaulo 22/6/2011, 17:58

    Grande Alexandre, ainda pensei colocar a variavel comp=InputBox bla bla bla

    Assim a caixa de dialogo da InputBox, pedia a quantidade de letras em cada palavras, mas o tempo não sobra.


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Função String + numero Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Função String + numero Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Função String + numero Folder_announce_new Instruções SQL como utilizar...
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Função String + numero Empty Re: [Resolvido]Função String + numero

    Mensagem  JPaulo 22/6/2011, 19:56

    Argumento passado para a Função;


    Public Function SeparaPalavras(ByVal strFrase As String, ByVal comp As Integer) As String
    'By JPaulo ® Maximo Access
    'argumento strFrase define a sua Frase
    'argumento comp define o comprimento da palavra


    If strFrase = "" Or comp < 1 Then
    SeparaPalavras = strFrase
    Exit Function
    End If

    'Se a string é menor do que o comp, retorne "" (vazio)
    If Len(strFrase) < comp Then
    SeparaPalavras = ""
    Exit Function
    End If

    Dim strPalavra As String, strRestantes As String, strIndex As Integer
    strPalavra = ""
    strRestantes = ""

    'Remove espaços no início e no final da string
    strFrase = Trim(strFrase)

    'Procura a primeira palavra
    strIndex = InStr(strFrase, " ")
    If strIndex > 0 Then
    strPalavra = Mid(strFrase, 1, strIndex - 1)
    strRestantes = Trim(Mid(strFrase, strIndex + 1))
    Else
    strPalavra = strFrase
    strRestantes = ""
    End If

    If strPalavra = "" And strRestantes = "" Then
    SeparaPalavras = ""
    Exit Function
    End If

    'Verifiqua se há tamanho da palavra a retornar ou se existem mais
    If Len(strPalavra) >= comp Then
    If strRestantes = "" Then
    SeparaPalavras = strPalavra
    Else
    SeparaPalavras = Trim(strPalavra & " " & SeparaPalavras(strRestantes,comp))
    End If
    Else
    If strRestantes = "" Then
    SeparaPalavras = ""
    Else
    SeparaPalavras = Trim(SeparaPalavras(strRestantes,comp))
    End If
    End If
    End Function



    Pode testar abrindo a janela immediate e digitar;

    ?SeparaPalavras("João vai à escola",4)

    Resultado:

    João escola


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Função String + numero Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Função String + numero Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Função String + numero Folder_announce_new Instruções SQL como utilizar...
    avatar
    ivont
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4
    Registrado : 13/06/2011

    [Resolvido]Função String + numero Empty Re: [Resolvido]Função String + numero

    Mensagem  ivont 22/6/2011, 23:19

    Muito Obrigado ....Era mesmo isso que eu pretendia ....Peço desculpa só responder agora mas estava na faculdade.

    Dou o tópico por terminado.Um grande abraço, especialmente ao Jpaulo e ao AlexandreNeves
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]Função String + numero Empty Re: [Resolvido]Função String + numero

    Mensagem  JPaulo 23/6/2011, 12:10

    Obrigado pelo retorno o fórum agradece.

    Bons estudos.


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Função String + numero Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Função String + numero Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Função String + numero Folder_announce_new Instruções SQL como utilizar...

    Conteúdo patrocinado


    [Resolvido]Função String + numero Empty Re: [Resolvido]Função String + numero

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 8/11/2024, 04:08