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]Campo calculado

    Compartilhe

    agosfernandes
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : França
    Mensagens : 6
    Registrado : 02/11/2016

    [Resolvido]Campo calculado

    Mensagem  agosfernandes em 9/2/2018, 19:43

    Viva,

    Estou a tentar utilizar este código (aqui sugerido) num campo calculdado de uma tabela:

    Right([SeuCampoNome]; Len([SeuCampoNome]) - InStrRev([SeuCampoNome]; " "))

    Infelizmente, o access nao aceita isto.

    A ideia é, independentemente do comprimento de um nome, extrair o ultimo nome na própria tabela.

    Alguém que possa ajudar?

    Obrigado


    Última edição por agosfernandes em 10/2/2018, 21:08, editado 1 vez(es)

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

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

    Re: [Resolvido]Campo calculado

    Mensagem  Noobezinho em 9/2/2018, 20:38

    Funciona sim!


    Right(SeuCampoNome, Len(SeuCampoNome) - InStrRev(SeuCampoNome, " "))

    Veja que tirei os colchetes pois se trata de caixa de textos e substitui o ponto e virgula ( ; ) por ponto (.)

    Mas isso é para controles em um formulário, caso queira fazer isso direto da tabela, terá que usar a função

    Dlookup() para "capturar" o dado.

    [ ]'s

    agosfernandes
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : França
    Mensagens : 6
    Registrado : 02/11/2016

    Apelido

    Mensagem  agosfernandes em 10/2/2018, 08:43

    Obrigado pela sua dica,

    Então como deveria utilizar o Dlookup() para o campo Nome onde pretendo ir buscar apenas o apelido?

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

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

    Re: [Resolvido]Campo calculado

    Mensagem  Noobezinho em 10/2/2018, 09:46


    O ideal é sempre procurar com base no código do registro, e então o Dlookup() retornar com o resultado do critério.

    Já sei o campo Nome, mas não sei se quer extrair o apelido desse campo.

    Esse campo Nome deve ter um outro campo ID (código do registro) ta tabela, certo?

    Se for isso, ficaria assim:

    NomeRetornado= Dlookup("[Nome]","NomeDataTabela","[codigodoRegistro] = " & Me!CodigodoRegistro)

    Imaginando que Nome seria o nome completo para tirar o último nome que seria, creio, o Apelido:

    Apelido =Right([NomeRetornado]; Len([NomeRetornado]) - InStrRev([NomeRetornado]; " "))

    [ ]'s

    frankhosaka
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 14
    Registrado : 22/12/2017

    Re: [Resolvido]Campo calculado

    Mensagem  frankhosaka em 10/2/2018, 10:02

    O Access não permite campos calculados na tabela.
    Você pode fazer isso através de consultas.

    Seja tblCliente com o campo [nome]

    Crie uma consulta qrySobrenomeCliente adicionando a tblCliente como fonte de dados, e crie um campo Sobrenome assim:

    Sobrenome: Direita([Nome];Compr([Nome])-RevEmSeq([Nome];" "))

    Aqui no Brasil isso não ajuda muito, quase todo mundo tem o sobrenome de Silva.

    agosfernandes
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : França
    Mensagens : 6
    Registrado : 02/11/2016

    Re: [Resolvido]Campo calculado

    Mensagem  agosfernandes em 10/2/2018, 11:32

    Obrigado a todos

    Mas chego â conclusao que numa tabela nao funciona. Acabei por "basear" o meu formulario numa query e assim tenho o tal campo apelidop.

    Obrigado a todos

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

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

    Re: [Resolvido]Campo calculado

    Mensagem  Noobezinho em 10/2/2018, 13:02


    Funciona sim, é saber como fazer Wink

    Mas está resolvido, só falta colocar o resolvido no titulo do tópico.

    Caso não saiba, veja como na minha assinatura.


    Boa sorte !

      Data/hora atual: 18/10/2018, 15:44