Notifications
Clear all

Gerar e Gravar Números sem repetição

4 Posts
2 Usuários
0 Reactions
1,059 Visualizações
(@glauber93)
Posts: 2
New Member
Topic starter
 

pessoal estou começando agora no fórum e resolvi criar um programa em vba.
já fiz a parte das telas e a gravação.
só estou com um problema e não sei nem por onde começar.

O usuário vai preencher todo o formulário e no final clicar em gravar, gravou deverá gerar e gravar um código chave onde o mesmo não poderá se repetir.

o mesmo código chave vou utilizar para puxar os dados na mala direta do word.

 
Postado : 21/07/2015 9:21 am
(@edcronos)
Posts: 1006
Noble Member
 

se esse codigo não é um tipo de senha vai ter que ser gerado sequencialmente como um numero de cadastro
e para não ter repetição vai ter que ser gravado em algum lugar para ser comparado

por padrão o pessoal usa a coluna A para ficar os codigos seja de produtos ou de clientes e por aí vai

_______ Coluna A <-------> Coluna B...
Linha1 _ Nº cadastro <----> Nome...
Linha2 _ 0001 <------------> Paulo
Linha3 _ 0002 <------------> Ana
Linha4 _ 0003 <------------> Joana

assim pelo numero do cadastro se sabe em que linha se encontra na planilha e fica facil editar e para adicionar novo cadastro é só verificar a ultima linha da coluna A somar 1 no numero encontrado e adicionar o novo cadastro na linha de baixo

Somente é impossíveis até que alguém faça
A logica está presa na irracionalidade humana, e morta nos que se consideram donos da verdade.

"ALGUM MODERADOR ME EXPULSE DO FÓRUM POR FAVOR"

 
Postado : 21/07/2015 9:41 am
(@glauber93)
Posts: 2
New Member
Topic starter
 

se esse codigo não é um tipo de senha vai ter que ser gerado sequencialmente como um numero de cadastro
e para não ter repetição vai ter que ser gravado em algum lugar para ser comparado

por padrão o pessoal usa a coluna A para ficar os codigos seja de produtos ou de clientes e por aí vai

_______ Coluna A <-------> Coluna B...
Linha1 _ Nº cadastro <----> Nome...
Linha2 _ 0001 <------------> Paulo
Linha3 _ 0002 <------------> Ana
Linha4 _ 0003 <------------> Joana

assim pelo numero do cadastro se sabe em que linha se encontra na planilha e fica facil editar e para adicionar novo cadastro é só verificar a ultima linha da coluna A somar 1 no numero encontrado e adicionar o novo cadastro na linha de baixo

Sim, irei utilizar a coluna A para gravar os codigos primarios, mas antes de gravar deverá visualizar se já existe.
mas preciso fazer tudo isso em vba como que faço?

 
Postado : 22/07/2015 9:05 am
(@edcronos)
Posts: 1006
Noble Member
 

cara, tudo vai depender do sou projeto

mas, uma logica basica...
se seus codigos são a partir do um e vão em sequencia
logicamente se na ultima linha tiver o valor 220, então vão existir 220 registros

se o ultimo registros está na linha 250, então o registro nº 1 está na linha (250-220+1) "isso se não pular linha
para se chegar na ultima linha facilmente se baseando na coluna A

Ultima_linha = Cells(Rows.Count,"A").End(xlUp).Row

para pega o registro da ultima linha:

ultimo_registro = Cells(Ultima_linha , "A" ).value2

para pegar o valor da coluna "C" do registro 33

valor = Cells( Ultima_linha - ultimo_registro + 33 , "C" ).value2

é apenas uma logica basica

para gravar um novo registro na ultima linha

Ultima_linha+1
Cells( Ultima_linha + 1 , "A" ).value2 = ultimo_registro + 1

Somente é impossíveis até que alguém faça
A logica está presa na irracionalidade humana, e morta nos que se consideram donos da verdade.

"ALGUM MODERADOR ME EXPULSE DO FÓRUM POR FAVOR"

 
Postado : 22/07/2015 11:40 am