MaximoAccess

Caro Usuário, não tire as suas duvidas nas Salas de Repositório, abra sempre um novo tópico relacionado, nas salas destinadas para o efeito, como Sala de Tabelas, Consultas, Formulários, Relatórios, Macros, Módulos e VBA.

Obrigado

Administração do MaximoAccess

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

    Numerar as linhas de uma coluna

    Compartilhe

    cortez48
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 3
    Registrado : 02/04/2016

    Numerar as linhas de uma coluna

    Mensagem  cortez48 em Sab 02 Abr 2016, 18:41

    Boa tarde,
    Estou com dificuldade em numerar as linhas de uma coluna por ordem de registo, possivelmente é como o ovo de Colombo mas eu não consigo lá chegar.
    Passo a explicar o que pretendo:
    Exemplo:
    Coluna A com 25 linhas
    Necessito numerar a coluna B sempre que houver um registo pela sua sequencia, assim:
    1º Registo A6 (1)
    2º Registo A9 (2)
    3º Registo A2 (3)
    etc etc
    Agradeço a vossa ajuda quer seja por função exel ou VBA.
    Com os melhores cumprimentos,
    Cortez

    FabioPaes
    Developer
    Developer

    Respeito às Regras 100%

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

    Re: Numerar as linhas de uma coluna

    Mensagem  FabioPaes em Sab 02 Abr 2016, 20:04

    Se for emUma consulta ou formulario, o que precisa tem aqui esse exemplo:

    [Você precisa estar registrado e conectado para ver este link.]

    Tópico que foi debatido esse assunto:
    [Você precisa estar registrado e conectado para ver este link.]

    Agora se e na TABELA, Basta criar um Novo Campo, e no tipo colocar ele como NUMERACAO AUTOMATICA.

    cortez48
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 3
    Registrado : 02/04/2016

    numeração de registos

    Mensagem  cortez48 em Dom 03 Abr 2016, 15:04

    Boa tarde,
    O exemplo apresentado não corresponde à minha necessidade. Talvez eu me explicasse mal ou não entendesse a resposta.
    O que necessito é numerar a entrada de registos.
    Tenho a coluna A com varias linhas.
    Recebo um registo que por exemplo fica registado em A10, como se trata do 1º registo quero que seja atribuído em B10 0 numero 1
    Recebo novo dado que fica registado em A25, como se trata do 2º registo quero que seja atribuida em B25 o numero 2 , mas mantendo o numero 1 em B10
    Recedo novo dado que fica registado em A5, como se trata do 3º registo quero que seja atribuido em B5 o numero , mantendo os numeros 1 e 2 em B10 e b"% respectivamente.
    e assim sucessivamente.
    Agradeço ajuda.

    FabioPaes
    Developer
    Developer

    Respeito às Regras 100%

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

    Re: Numerar as linhas de uma coluna

    Mensagem  FabioPaes em Dom 03 Abr 2016, 16:06

    Aqui amigo tem um exemplo de AUTONUMERAÇÃO. [Você precisa estar registrado e conectado para ver este link.]

    Baixe e adapte pro seu Projeto...

    cortez48
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 3
    Registrado : 02/04/2016

    numerar registos

    Mensagem  cortez48 em Dom 03 Abr 2016, 18:49

    Mais uma vez Boa tarde a todos,
    Oi Fabio,
    O exemplo apresentado poderá, segundo penso, ajudar-me, contudo como está em access, não consigo abrir o Vba para o analisar. Caso alguém tenha este ou um outro exemplo aberto, eu muito agradeço.

    FabioPaes
    Developer
    Developer

    Respeito às Regras 100%

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

    Re: Numerar as linhas de uma coluna

    Mensagem  FabioPaes em Dom 03 Abr 2016, 19:10

    Amigo, o Código e aberto... Crie um Modulo no seu Projeto (Acredito ser em Access certo?) e cole isso:

    Código:

    Option Compare Database
    Option Explicit

    Function numeroLivre(argTabela As String, argCampo As String) As Long

        Dim i As Long
       
        'Atribui o valor zero à variável de contagem, assim
        'o valor inicial do resultado será 1. Para modificar o
        'início da contagem basta alterar o valor desta variável.
        i = 0
       
        Do
            'Incrementa o valor da variável
            'de contagem
            i = i + 1
           
            'Verifica se existe no campo e tabela informados o valor
            'atual da variável de contagem.
            If IsNull(DLookup(argCampo, argTabela, argCampo & "=" & i)) Then
                'Se não existir retorna o valor
                numeroLivre = i
                Exit Function
            End If
        Loop

    End Function



    Agora para criar a Numeração automática Sequencial faça assim:

    No Formulário onde ocorre a inserção dos dados coloque:

    1º No Formulario (ou ate mesmo em um campo), no evento ANTES DE ATUALIZAR COLOQUE:


    Código:

       
        'Verifica se o campo codFunc está nulo. Se estiver
        'significa que é um novo registro.
        If IsNull(codFunc) Then
            'Atribui ao campo o próximo número livre dentro
            'do campo codFunc na tabela Funcionario.
            codFunc.Value = numeroLivre("Funcionario", "codFunc")
        End If
       

    Sendo que:

    codFunc É o nome do Campo que queres que ENUMERE SEQUENCIAL;
    Funcionario É o Nome da TABELA onde tem o campo codFunc;


    Adapte pro seu Exemplo... E se não tiver conseguindo, por favor poste seu BD pra ver como ele esta montado...


      Data/hora atual: Sex 09 Dez 2016, 09:37