MaximoAccess

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

Obrigado

Administração do MaximoAccess

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

    [Resolvido]Procurar parte do texto

    Compartilhe
    avatar
    luissiscone
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 158
    Registrado : 16/02/2011

    [Resolvido]Procurar parte do texto

    Mensagem  luissiscone em 15/1/2018, 12:38

    Tenho esta rotina que deveria fazer o seguinte, dentro de uma frase, retornar um resultado qualquer especificado ex.:
    TBL_USUARIOS resultado TBL_USR
    TBL_USUARIOS_LOGADOS resultado TBL_ULR

    Mas acontece que ambos estão trazendo TBL_USR o primeiro que acha...

    Alguém teria uma ideia de como resolver isto ?

    If InStr(Me![GRD_CTB]![CTB_CTB].Value, "TBL_USUARIOS") > 0 Then
    Me![GRD_CTB]![CTB_TBL].Value = "TBL_USR"
    ElseIf InStr(Me![GRD_CTB]![CTB_CTB].Value, "TBL_USUARIOS_LOGADOS") > 0 Then
    Me![GRD_CTB]![CTB_TBL].Value = "TBL_ULR"
    End If


    At.
    avatar
    FabioPaes
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3914
    Registrado : 14/08/2013

    Re: [Resolvido]Procurar parte do texto

    Mensagem  FabioPaes em 15/1/2018, 17:41

    Olá, acredito que terá que detalhar mais sua Dúvida amigo... Confesso que não entendi o que pretende e nem o problema que tem...

    Experimento detalhar mais, postando o código completo e falando o que pretendia com ele... Se necessário, poste print da tela!


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3632
    Registrado : 29/06/2012

    Re: [Resolvido]Procurar parte do texto

    Mensagem  Noobezinho em 15/1/2018, 19:17

    Pelo que entendi, nessa frase:

    If InStr(Me![GRD_CTB]![CTB_CTB].Value, "TBL_USUARIOS") > 0

    Ele está tentando pesquisar a tabela toda pelo valor, dessa maneira não vai dar mesmo, pois tem que

    fazer a varredura, registro por registro, até chegar no final da tabela, ou até quando encontrar o registro, se for o caso.

    Aguardemos o retorno dele. Wink

    [ ]'s
    avatar
    luissiscone
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 158
    Registrado : 16/02/2011

    Re: [Resolvido]Procurar parte do texto

    Mensagem  luissiscone em 16/1/2018, 11:42

    Na verdade é que não havia encontrado um modo de pesquisar um trecho de texto especifico dentro de uma frase...
    É uma rotina de conexão de tabelas onde busco em um diretório em meio a muitas tabelas as que irão ser vinculadas...

    Mas resolvi mudando o parâmetro de busca...

    'On Error GoTo m

    Dim strStartDirectory As String
    strStartDirectory = BrowseFolder

    If Len(strStartDirectory) > 0 Then
    Me.CMH_CBD = strStartDirectory & "\" '& "\Backup.zip"
    DoCmd.RunSQL "Delete FROM TBL_CTB;"
    Call List
    DoCmd.RunSQL "UPDATE TBL_CTB SET TBL_CTB.USR_ALT = [Formulários]![FRM_ULG]![ULG_COD];"
    Me.GRD_CTB.Requery
    End If

    Dim rst As Recordset
    Set rst = Forms![FRM_CMH]![GRD_CTB].Form.Recordset
    Dim qtd As Long
    Dim contador As Long
    contador = 0

    'rst.MoveLast
    qtd = rst.RecordCount
    rst.MoveFirst
    'SysCmd 1, "Aguarde... Executando backup, tabela : ", qtd
    SysCmd 1, "Aguarde... Verificando tabelas, tabela : " & rst.AbsolutePosition + 1 & " | De | " & qtd, qtd
    'loop que irá percorrer os registros
    'rst.MoveFirst 'vai para o primeiro registro
    Do While Not rst.EOF
    DoEvents 'executa em segundo plano
    '------------------------------------------------
    'Código...
    If InStr(Me![GRD_CTB]![CTB_CTB].Value, "TBL_CRG") > 0 Then
    Me![GRD_CTB]![CTB_TBL].Value = "TBL_CRG"
    ElseIf InStr(Me![GRD_CTB]![CTB_CTB].Value, "TBL_AUS") > 0 Then
    Me![GRD_CTB]![CTB_TBL].Value = "TBL_AUS"
    ElseIf InStr(Me![GRD_CTB]![CTB_CTB].Value, "TBL_OBJ") > 0 Then
    Me![GRD_CTB]![CTB_TBL].Value = "TBL_OBJ"
    ElseIf InStr(Me![GRD_CTB]![CTB_CTB].Value, "TBL_USR") > 0 Then
    Me![GRD_CTB]![CTB_TBL].Value = "TBL_USR"
    ElseIf InStr(Me![GRD_CTB]![CTB_CTB].Value, "TBL_ULR") > 0 Then
    Me![GRD_CTB]![CTB_TBL].Value = "TBL_ULR"
    End If
    '------------------------------------------------
    contador = contador + 1 'acrescenta 1 na quantidade
    SysCmd 2, contador 'atualiza visão da barra de progressão
    rst.MoveNext 'proximo registro
    SysCmd 1, "Aguarde... Verificando tabelas, tabela : " & rst.AbsolutePosition + 1 & " | De | " & qtd, qtd
    Loop
    SysCmd 3 'limpa a barra de progressão
    rst.MoveFirst
    Me.USR_ALT = Forms![FRM_ULG]![ULG_COD].Value
    Me.DAT_ALT = Date
    Me.HOR_ALT = Time()

    Obrigado a todos.

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3632
    Registrado : 29/06/2012

    Re: [Resolvido]Procurar parte do texto

    Mensagem  Noobezinho em 16/1/2018, 13:15

    Ótimo!

    Quando a gente resolve por nós mesmo, lavamos a alma! Razz Laughing Laughing

    Parabéns!

    Valeu o retorno

    Boa sorte!

      Data/hora atual: 19/12/2018, 16:21