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


2 participantes

    Registros Aleatórios

    avatar
    emacsabino
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 190
    Registrado : 29/08/2011

    Registros Aleatórios Empty Registros Aleatórios

    Mensagem  emacsabino 23/1/2012, 19:07

    Olá novamente a todos! Tenho uma dúvida e gostaria de saber como resolver se for possível. Eu tenho um formulário que é aberto como consulta de registros para determinados parâmetros que eu coloco. O que eu gostaria era de que quando eu abrisse esse formulário eu digitasse a quantidade de registros que eu quero que apareça e que esses registros sejam aleatórios. Exemplo, digamos que eu tenha 300 registros de pessoas que moram em uma cidade X, então eu queria que quando o formulário da cosulta fosse aberto, eu digitasse ou antes ou depois o número 40 e ai, apareceria 40 registros sorteados aleatoriamente do total de 300 que moram na cidade X. Será se é possível isso? Se for possível, gostaria de uma ajuda
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    Registros Aleatórios Empty Re: Registros Aleatórios

    Mensagem  criquio 23/1/2012, 20:10

    Dê uma pesquisada por rnd no vba do Access. Você pode criar uma consulta com os registros da cidade e implementar um campo com um número para que não tenha buracos na contagem e usar esses número no rnd. Ou então fazer um loop pela tabela saltando números quando necessário. Por exemplo, se a sequência for 5 - 7 - 15 - 38 - 75 - 225 o loop pode saltar os números entre esses e depois escolher um aleatório entre esses existentes.


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    avatar
    emacsabino
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 190
    Registrado : 29/08/2011

    Registros Aleatórios Empty Re: Registros Aleatórios

    Mensagem  emacsabino 23/1/2012, 20:13

    Críquio obrigado por sua boa vontade em querer me ajudar, mas eu não entendi bem o que você quis dizer, eú até dei uma olha em alguns tópicos e exemplos de sorteios aleatórios mas não consegui fazer isso com os meus registros. Se você pudesse mais claro e mais detalhista, eu agradeço. E esse "rnd" o que significa?
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    Registros Aleatórios Empty Re: Registros Aleatórios

    Mensagem  criquio 23/1/2012, 20:16

    Amigão, como eu disse, pode pesquisar por rnd no F1 do vba do Access que conseguirás entender o que ele significa e o que ele faz. Estou meio sem tempo para elaborar um passo a passo. Talvez eu encontre algo mais ou menos nesse sentido entre meus trabalhos. Se encontrar, eu posto aqui. Mas vai pesquisando o F1 do vba como eu falei para entender o rnd.


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    avatar
    emacsabino
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 190
    Registrado : 29/08/2011

    Registros Aleatórios Empty Re: Registros Aleatórios

    Mensagem  emacsabino 24/1/2012, 18:11

    Eu fiz aqui um estudo essa função que você colocou Críquio, mas não consegui ter êxito
    avatar
    emacsabino
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 190
    Registrado : 29/08/2011

    Registros Aleatórios Empty Re: Registros Aleatórios

    Mensagem  emacsabino 24/1/2012, 19:00

    Críquio eu tentei fazer isso no código SQL da consulta para aprensentar os registros aleatórios:
    SELECT Cidades.Código, Cidades.Instituição, Cidades.Ano, Cidades.Mês, Cidades.Cargo, Cidades.Abrangência, Cidades.Estado, Cidades.Município, Cidades.Cidade, Cidades.[A)], Cidades.[B)], Cidades.[C)], Cidades.[D)], Cidades.[E)], Cidades.Bairro, Cidades.Escolher, Cidades.Profissão, Cidades.Verificação
    FROM Cidades ORDER BY Rnd(Int(Now()*[Código])-Now()*[Código]);
    WHERE (((Cidades.Bairros)=Formulários!PorBairros!Combinação13));
    Só que aparece assim a mensagem quando eu salvo: "caracteres encontrados após final de instrução sql"

    O código sem usar a função rnd antes estava assim:

    SELECT Cidades.Código, Cidades.Instituição, Cidades.Ano, Cidades.Mês, Cidades.Cargo, Cidades.Abrangência, Cidades.Estado, Cidades.Município, Cidades.Cidade, Cidades.[A)], Cidades.[B)], Cidades.[C)], Cidades.[D)], Cidades.[E)], Cidades.Bairro, Cidades.Escolher, Cidades.Profissão, Cidades.Verificação
    FROM Cidades
    WHERE (((Cidades.Bairros)=Formulários!PorBairros!Combinação13));

    Então tou querendo primeiro saber onde coloco o RND, para ai depois ver no que dá
    avatar
    emacsabino
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 190
    Registrado : 29/08/2011

    Registros Aleatórios Empty Re: Registros Aleatórios

    Mensagem  emacsabino 24/1/2012, 19:19

    Pessoal, deu certo os registros aleatórios, agora só tou querendo descobrir como acrescentar a opção em que eu digito a quantidade de registros que eu quero que apareça, pois quando clico na consulta, mostra todos os registros de forma aleatória, mas eu tou querendo que antes que abra eu digite o valor referente a quantidade de registros que eu quero que apareça
    avatar
    Convidad
    Convidado


    Registros Aleatórios Empty Re: Registros Aleatórios

    Mensagem  Convidad 24/1/2012, 19:27

    Função Rnd

    Retorna um Single que contém um número aleatório.

    Sintaxe

    Rnd[(number)]

    O argumento opcional number é um Single ou qualquer expressão numérica válida.

    Valores retornados

    Se number for Rnd gera

    Menor que zero O mesmo número todas as vezes, utilizando number como semente.
    Maior que zero O próximo número aleatório na seqüência.
    Igual a zero O número gerado mais recentemente.
    Não fornecido O próximo número aleatório na seqüência.

    Comentários:
    A função Rnd retorna um valor menor que 1, mas maior ou igual a zero.

    O valor de number determina como Rnd gera um número aleatório:

    Para qualquer semente inicial dada, a mesma seqüência de números é gerada porque cada chamada sucessiva à função Rnd utiliza o número anterior como semente para o próximo número da seqüência.

    Antes de chamar Rnd, utilize a instrução Randomize sem argumento para inicializar o gerador de números aleatórios com uma semente baseada no cronômetro do sistema.

    Para produzir números inteiros aleatórios em um dado intervalo, utilize esta fórmula:

    Int((limitesuperior - limiteinferior + 1) * Rnd + limiteinferior)

    Aqui, limitesuperior é o número mais alto do intervalo e limiteinferior é o número mais baixo.

    Observação:
    Para repetir seqüências de números aleatórios, chame Rnd com um argumento negativo imediatamente antes de utilizar Randomize com um argumento numérico. Utilizar Randomize com o mesmo valor de number não repete a seqüência anterior.
    avatar
    emacsabino
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 190
    Registrado : 29/08/2011

    Registros Aleatórios Empty Re: Registros Aleatórios

    Mensagem  emacsabino 24/1/2012, 19:43

    Eu já consegui usar a Função, companheiro Norbs, os registros estão aparecendo aleatoriamente, no entanto eu quero ter a opção de limitar a quantidade registros que aparece quando eu faço a consulta. Tem como?
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    Registros Aleatórios Empty Re: Registros Aleatórios

    Mensagem  criquio 24/1/2012, 19:45

    Dê uma consultada na sala de códigos sql. Lá tem várias instruções para você aperfeiçoar sua sintaxe.


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    avatar
    emacsabino
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 190
    Registrado : 29/08/2011

    Registros Aleatórios Empty Re: Registros Aleatórios

    Mensagem  emacsabino 24/1/2012, 19:57

    Críquio eu encontrei Repositório de Códigos VBA e SQL para Ms Access , onde tem do JPaulo instruções SQL como utilizar, só que em nenhuma instrução que ele colocou eu encontrei falando sobre quantidade de registros. Se eu tiver procurando no lugar errado me avisa, pq não sei onde fica essa sala

    Conteúdo patrocinado


    Registros Aleatórios Empty Re: Registros Aleatórios

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 22/11/2024, 13:12