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

    [Resolvido]Função para buscar um número aleatório de um intervalo

    avatar
    elmanojr
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 26
    Registrado : 20/07/2017

    [Resolvido]Função para buscar um número aleatório de um intervalo Empty [Resolvido]Função para buscar um número aleatório de um intervalo

    Mensagem  elmanojr Ter 28 Ago 2018, 22:11

    Ola pessoal Tudo bom?
    Estou meio confuso, poderia me ajudar? Tenho a ideia na cabeça mas nao estou conseguindo coloca-la em pratica.
    Seguinte quero simular uma rolagem de dados usando a função rdn()... ou random ou randomize...
    Quero criar uma função onde passo os valores possíveis no dado. Ex um dado de 6 lados os valores serão de 01 ate 06, um dado de 20 lados valores serão de 01 ate 20....
    Então pensei assim

    Function random_dados (ninicio as interger, nfim as interger) as interger
    ' AQUI como coloco para a função sortear um numero entre os valores de ninicio e nfim?
    Só preciso que a função retorne um numero aleatório entre o intervalo passado,
    End Function

    Desde ja obrigado pela ajuda!
    PS desculpe minha ignorância mas deu um branco aqui e nao consigo ir a diante!
    PS2 Os dados são de diferentes lados e tamanhos (4,6,8,10,12,20 e 100) são dados de porcentagens para um jogo de "RPG"
    livio.sfranca
    livio.sfranca
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 150
    Registrado : 09/01/2018

    [Resolvido]Função para buscar um número aleatório de um intervalo Empty Re: [Resolvido]Função para buscar um número aleatório de um intervalo

    Mensagem  livio.sfranca Ter 28 Ago 2018, 22:50

    Não sei se entendi direito,

    Tente assim:

    Código:
    Function RandomDados(nMin As Integer, nMax As Integer) As Integer
        RandomDados = Int((nMax * Rnd()) + 1)
    End Function

    Para chamar a função, escreva RandomDados(1, 6).
    avatar
    elmanojr
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 26
    Registrado : 20/07/2017

    [Resolvido]Função para buscar um número aleatório de um intervalo Empty Re: [Resolvido]Função para buscar um número aleatório de um intervalo

    Mensagem  elmanojr Qua 29 Ago 2018, 08:34

    Ok Beleza deu certo...
    Fiz um Select e conforme a escolha ja chama a função e passa o parametro.

    Agora so preciso mandar o resultado para uma variavel ou direto para um campo no formulario
    algo mais ou menos assim:
    Código:
    ============================================
    Private Sub cboRolarDados_Click()
    On Error GoTo Err_Handler

    'Crio as variaveis
    Dim ResultadoRolagem As Integer

    'Faço um Select Case no quadro Dados para saber qual foi selecionado
    Select Case Me.qdroTipoDados
           Case 1
           'Significa que o quadro Tipo Dados selecionou D4
           'chamo a função randomize e passo os parametros e o resultado para o campo txtResultadoRolagem
           Call RandomDados(1, 4)
           Me.txtResultadoRolagem = ResultadoRolagem
          [color=#ff33cc]É Aqui que da erro, como fazer?[/color]
           Case 2
           'Significa que o quadro Tipo Dados selecionou D6
           'chamo a função randomize e passo os parametros e o resultado para o campo txtResultadoRolagem
            Call RandomDados(1, 6)
           Case 3
           'Significa que o quadro Tipo Dados selecionou D8
           'chamo a função randomize e passo os parametros e o resultado para o campo txtResultadoRolagem
            Call RandomDados(1, 8)
           Case 4
           'Significa que o quadro Tipo Dados selecionou D10
           'chamo a função randomize e passo os parametros e o resultado para o campo txtResultadoRolagem
           Call RandomDados(1, 10)
           Case 5
           'Significa que o quadro Tipo Dados selecionou D12
           'chamo a função randomize e passo os parametros e o resultado para o campo txtResultadoRolagem
           Call RandomDados(1, 12)
           Case 6
           'Significa que o quadro Tipo Dados selecionou D20
           'chamo a função randomize e passo os parametros e o resultado para o campo txtResultadoRolagem
            Call RandomDados(1, 20)
           Case 7
           'Significa que o quadro Tipo Dados selecionou D100
           'chamo a função randomize e passo os parametros e o resultado para o campo txtResultadoRolagem
            Call RandomDados(1, 100)
           
           Case Else
               GoTo Exit_Here
    End Select
       
    Exit_Here:        'Porta de Saída
       Exit Sub

    Err_Handler:     'Tratando o Erro
       Call fncMensagemCri("Erro # " & str(Err.Number) & vbCrLf & "gerado na " & Err.Source & vbCrLf & vbCrLf & "Descrição: " & Err.Description, "Avise o Administrador do Sistema - Msg Erro")
       Resume Exit_Here
    End Sub
    ==========================================================
    Preciso passar o resultado do retorno da função para a variavel ResultadoRolagem ou para caixa de texto Me.txtResultadoRolagem
    Deu para entender ?

    Por enquanto MUITO OBRIGADO ! esta dando certo ! bounce
    livio.sfranca
    livio.sfranca
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 150
    Registrado : 09/01/2018

    [Resolvido]Função para buscar um número aleatório de um intervalo Empty Re: [Resolvido]Função para buscar um número aleatório de um intervalo

    Mensagem  livio.sfranca Qua 29 Ago 2018, 13:29

    Bom dia,

    O erro está ocorrendo pois você não definiu a variável ResultadoRolagem.

    Em cada um dos Case's você precisará defini-la, ou coloque assim:

    Case 1
          'Significa que o quadro Tipo Dados selecionou D4
          'chamo a função randomize e passo os parametros e o resultado para o campo txtResultadoRolagem
          Me.txtResultadoRolagem = RandomDados(1, 4)
    avatar
    elmanojr
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 26
    Registrado : 20/07/2017

    [Resolvido]Função para buscar um número aleatório de um intervalo Empty Re: [Resolvido]Função para buscar um número aleatório de um intervalo

    Mensagem  elmanojr Qua 29 Ago 2018, 19:14

    Ola Livio,

    Perfeito funcionou, Muito obrigado
    Cara estou ficando velho as vezes da um branco, hahahahahaha

    Grande abraço
    livio.sfranca
    livio.sfranca
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 150
    Registrado : 09/01/2018

    [Resolvido]Função para buscar um número aleatório de um intervalo Empty Re: [Resolvido]Função para buscar um número aleatório de um intervalo

    Mensagem  livio.sfranca Qua 29 Ago 2018, 19:17

    Muito bom,

    Se resolvido, por favor marque o tópico como Resolvido.

    avatar
    elmanojr
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 26
    Registrado : 20/07/2017

    [Resolvido]Função para buscar um número aleatório de um intervalo Empty Re: [Resolvido]Função para buscar um número aleatório de um intervalo

    Mensagem  elmanojr Qua 29 Ago 2018, 19:48

    Ola Livio,
    Onde marco o topico como resolvido, sou novato por aqui........

    Obrigado Novamente

    Tem um botaão no final da pagina "Resolvido" mas nao acontece nada qdo clico nele
    livio.sfranca
    livio.sfranca
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 150
    Registrado : 09/01/2018

    [Resolvido]Função para buscar um número aleatório de um intervalo Empty Re: [Resolvido]Função para buscar um número aleatório de um intervalo

    Mensagem  livio.sfranca Qua 29 Ago 2018, 19:55

    Do jeito que fez, funcionou. Mas para tópicos futuros, siga as instruções do link:

    Resolução de tópicos

    Bom trabalho!

    Conteúdo patrocinado


    [Resolvido]Função para buscar um número aleatório de um intervalo Empty Re: [Resolvido]Função para buscar um número aleatório de um intervalo

    Mensagem  Conteúdo patrocinado


      Data/hora atual: Sex 19 Abr 2024, 17:53