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]Cálculo de Desvio Padrão em coluna de ListBox...

    HARYSOHN
    HARYSOHN
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12227
    Registrado : 01/03/2011

    [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox... Empty Cálculo de Desvio Padrão em coluna de ListBox...

    Mensagem  HARYSOHN em 6/9/2011, 19:20

    Bem amigos, para uma tabela creio que não seria complicado conquanto que o proprio access tem este tipo de cálculo..

    Mac omo fazer isto para uma coluna de listBox

    O Cálculo seria este:
    Supondo que tanhamos 2 registros na list...
    1 - 2,400
    2 - 3,00
    3 - 3,00

    calculo da media dos dados da coluna 12 = (2,400 + 3,00 + 3,00) / 3
    média dos dados da coluna 12 = 2,800
    Desvio padrão = √([(2,400 - 2,800)² + (3,00 - 2,800)² + (3,00 - 2,800)²] / (3 - 1))
    Desvio = √(0,332820323027549/ 2)
    desvio = 0,346410161513774



    Toda ajuda á bem vinda..
    criquio
    criquio
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

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

    [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox... Empty Re: [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox...

    Mensagem  criquio em 6/9/2011, 19:27

    Acredito que o que esteja pegando mais aí seja a soma dos valores da listbox, não? Se for, temos no Repositório pelo menos dois exemplos que fazem essa soma, sendo um meu e outro do JPaulo. O meu é aquele de gestão de venda com tabelas desvinculadas Very Happy


    .................................................................................
    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.

    HARYSOHN
    HARYSOHN
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12227
    Registrado : 01/03/2011

    [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox... Empty Re: [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox...

    Mensagem  HARYSOHN em 6/9/2011, 20:04

    A soma eu ja consigo.. tanto a soma como a média..
    o que está pegando é isto:


    calculo da media dos dados da coluna 12 = (2,400 + 3,00 + 3,00) / 3
    média dos dados da coluna 12 = 2,800
    Desvio padrão = √(e]2,400 - 2,800)² + (3,00 - 2,800)² + (3,00 - 2,800)²] / (3 - 1))


    Porque o numero de registro na list será variável de acordo com o filtro..

    Então:
    Consigo a Soma OK
    Consigo a média OK

    Agora como ter os valores por linha para aplicar..
    Pensei em cada loop criar uma variável, porem nao poderia ser declarada.. seria uma variável temporária de acordo com o numero de registro..

    Algo assim

    1 Loop
    Var1 = Valor X
    2 Loop
    Var2 = Valor Y
    3 Loop = Valor Y...

    Mas isso ta pegando...

    Eu fiz um código criando uma tabela temporária inserindo registro a cada loop, creio que será a melhor solução..
    Depois da tabela feita calculo o Desvio padrao.. lanço em um campo.. e excluo a tabela...


    Agora como efetuar o cálculo?


    Saudações
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3491
    Registrado : 04/04/2010

    [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox... Empty Re: [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox...

    Mensagem  Avelino Sampaio em 6/9/2011, 20:15

    Olá hary

    vejo a possibilidade de vc montar isso usando a fução split() ou uso de uma matriz de tamanho dinâmico

    Aceito o desafio, vou montar um exemplo e posto aqui.

    HARYSOHN
    HARYSOHN
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12227
    Registrado : 01/03/2011

    [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox... Empty Re: [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox...

    Mensagem  HARYSOHN em 6/9/2011, 20:20

    OBrigado Amigo Avelino.. Consegui uma solução da seguinte maneira


    Private Sub btnDesvio_Click()
    'Declaração de variáveis para utilização no código
    Dim StrSQL As String
    Dim i


    'Aqui crio uma tabela temporária que receberá os valores constantes da ListBox a cada Loop

    StrSQL = ""
    StrSQL = StrSQL & "Create table TMP(ID_TMP AUTOINCREMENT, Valores Double)"
    'Cria a tabela
    CurrentDb.Execute StrSQL

    'para looping em listBox e a cada loop insiro o valor do registro da list na tabela
    For i = 1 To Me.lstConsulta.ListCount - 1

    CurrentDb.Execute "INSERT INTO TMP(Valores) Values(""" & Me.lstConsulta.Column(12, i) & """);"

    Next i

    '---------------------------------------------------------
    'Cálculo de desvio padrão

    Dim dblX As Double
    Dim dblY As Double

    'Desvio Padrão
    dblX = DStDev("[Valores]", "TMP")
    MsgBox dblX

    'Aqui você elimina a tabela
    CurrentDb.Execute ("Drop table TMP")


    Valeu... Mas fica o desafio para fazer na list sem utilização de tabela..

    Saudações


    End Sub
    criquio
    criquio
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

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

    [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox... Empty Re: [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox...

    Mensagem  criquio em 6/9/2011, 21:01

    Não sei se entendi bem a dúvida, mas para saber o número de registro, não seria apenas usar o Me.NomeDaList.ListCount?


    .................................................................................
    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.

    HARYSOHN
    HARYSOHN
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12227
    Registrado : 01/03/2011

    [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox... Empty Re: [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox...

    Mensagem  HARYSOHN em 6/9/2011, 21:12

    A duvida não era sobre numero de registro amigão.. e sim calcular o desvio padrão para uma determinada coluna da listBox..

    Esta listBox é filtrada em certas ocasiões e preciso dessa coluna...
    1 - Valor Maximo
    2 - Valor Minimo
    3 - Média
    4 - Soma
    5 - Desvio Padrão que é:

    Em probabilidade e Estatística, o desvio padrão é a medida mais comum da dispersão estatística. O desvio padrão define-se como a raiz quadrada da variância. É definido desta forma de maneira a dar-nos uma medida da dispersão que:

    1.seja um número não-negativo;
    2.use a mesma unidade de medida dos dados fornecidos inicialmente.
    Faz-se uma distinção entre o desvio padrão σ (sigma) do total de uma população ou de uma variável aleatória, e o desvio padrão s de um subconjunto em amostra.



    é por ai.. rsrs
    HARYSOHN
    HARYSOHN
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12227
    Registrado : 01/03/2011

    [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox... Empty Re: [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox...

    Mensagem  HARYSOHN em 6/9/2011, 21:17

    Segundo Andréa Wolffenbutte .....


    É um parâmetro muito usado em estatística que indica o grau de variação de um conjunto de elementos. Exemplificando. Se medirmos a temperatura máxima durantes três dias em uma cidade e obtivermos os seguintes valores, 28°, 29° e 30°, podemos dizer que a média desses três dias foi 29°.


    Em outra cidade, as temperaturas máximas nesses mesmos dias podem ter sido 22°, 29° e 35°. No segundo caso, a média dos três dias também foi de 29°. As médias têm o mesmo valor, mas os moradores da primeira cidade viveram três dias de calor, enquanto os da segunda tiveram dois dias de calor e um de frio. Para diferenciar uma média da outra, foi criada a noção de desvio padrão, que serve para dizer o quanto os valores dos quais se extraiu a média são próximos ou distantes da própria média. No exemplo acima, o desvio padrão da segunda cidade é muito maior que o da primeira.

    Uma das aplicações mais comuns do desvio padrão é para cálculo da classificação no vestibular. Se dois candidatos ao mesmo curso tiram nota 7 em provas diferentes, o peso desse resultado vai depender do desvio padrão de cada exame. Digamos que a média das notas nas duas provas tenha sido 5. aquele que obteve 7 na prova cujo desvio padrão foi menor, será mais considerado porque significa que ele conseguiu um 7 em um exame em que quase todo mundo ficou próximo a 5. enquanto o outro conquistou um 7 em uma prova onde muitos outros também tiraram notas altas.
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3491
    Registrado : 04/04/2010

    [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox... Empty Re: [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox...

    Mensagem  Avelino Sampaio em 6/9/2011, 21:54

    Olá Hary

    Segue exemplo:

    Baixar exemplo

    Selecione uma placa e dê um enter pra filtar e veja o resultado.

    O função usada foi essa:


    Código:
    Private Function fncDesvio() As Double
    Dim k, j As Long, Seq As String, media As Double, soma As Double

    For j = 0 To Me!Lista.ListCount - 1: Seq = Seq & Me!Lista.Column(2, j) & "~": Next
    Seq = Left(Seq, Len(Seq) - 1)
    k = Split(Seq, "~")
    For j = 0 To UBound(k): soma = soma + k(j): Next
    media = soma / Me!Lista.ListCount
    soma = 0
    For j = 0 To UBound(k): soma = soma + ((media - k(j)) ^ 2): Next
    fncDesvio = Sqr(soma / (Me!Lista.ListCount - 1))
    End Function

    Bom estudo!
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3491
    Registrado : 04/04/2010

    [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox... Empty Re: [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox...

    Mensagem  Avelino Sampaio em 6/9/2011, 21:59

    A solução usando a tabela também é muito boa mas eu acho que vc não deveria ficar construindo e destruindo a tabela. Construa a tabela e pronto. Depois basta deletar e realimentar os dados.

    Sucesso!
    HARYSOHN
    HARYSOHN
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12227
    Registrado : 01/03/2011

    [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox... Empty Re: [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox...

    Mensagem  HARYSOHN em 6/9/2011, 22:14

    Entendi sobre a questão da tabela e sua solução ficou simplesmente excelente... so um porém no meu caso...

    A minha list tem cabeçalho.. e interfere no código pois entende como registro..
    e dá tipos incompativeis...

    Há como resolver?

    Grato...
    criquio
    criquio
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

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

    [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox... Empty Re: [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox...

    Mensagem  criquio em 6/9/2011, 22:29

    Só um parecer adicional quanto à fazer isso por tabela. Eu particularmente, acredito ser mais prático usar listbox sempre que possível, pois acredito que ficar inserindo e excluindo dados em um tabela, ou ficar criando e excluindo tabelas, possa tornar o banco mais suscetível a falhas e a corrompimento de dados.

    É só um ponto de vista de quem ainda não tem tanta experiência assim Very Happy

    Agora, mais uma dica: segundo entendi, você quer calcular o desvio padrão em cada linha. Bem, acredito que bastaria, então, adicionar uma coluna e fazer esse cálculo parecido com a soma de uma coluna, mas ao invés de pegar todas as linhas, far-se-ia o cálculo linha a linha.

    Talvez o exemplo do colega Avelino esteja mais ou menos por aí. Ainda não o olhei Very Happy


    .................................................................................
    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.

    HARYSOHN
    HARYSOHN
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12227
    Registrado : 01/03/2011

    [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox... Empty Re: [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox...

    Mensagem  HARYSOHN em 6/9/2011, 22:39

    Tanto a solução da tabela como a do Avelino produziram resultados satisfatórios.. no entando a solução do Avelino é bem mais digamos... digamos.. Enxuta por assim dizer, pois não necessita justamente de tabelas... No entanto encontrei problema no cabeçalho da list...Pois o codigo entende como registro..

    Este mesmo problema tive em outro tópico que foi solucionado com ajuda do Colega Alexandre, que era o código para extrair valores (Min e Max) da list...

    Porém tentei aplicar a solução no exemplo do Avelino e não obtive sucesso..

    Quando a questão do cálculo linha a linha não sei se entendi bem... Seria algo como o resultado de duas linhas anteriores fosse acrescido da terceira e este resultado da quarta e assim sucessivamente?

    Bem...

    Obrigado pela opinião Mestre Críquio, é de sempre grande valia.
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3491
    Registrado : 04/04/2010

    [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox... Empty Re: [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox...

    Mensagem  Avelino Sampaio em 6/9/2011, 22:44

    Olá Hary

    começa com J =1 ao invez de 0

    For j = 1 To Me!Lista.ListCount - 1: Seq = Seq & Me!Lista.Column(2, j) & "~": Next



    Valdino, quanto a ficar deletando e criando tabelas acho que pode dar alguma problema lá na frente mas quanto as deletar e criar registros não vejo problema a não ser pelo aumento de tamanho do banco (o uso do compactar e repara periodico resolve a questão).

    Sucesso!
    HARYSOHN
    HARYSOHN
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12227
    Registrado : 01/03/2011

    [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox... Empty Re: [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox...

    Mensagem  HARYSOHN em 6/9/2011, 23:00

    Se observarem o código da tabela.. a mesma só é carregada para efeito do cálculo e logo depois que carregada a caixatexto.. é ecluida...Penso que modificando para exluir apenas os registros fique bom...

    Quanto ao J=1 foi justamente a solução aplicada em outro tópico para resolver isto.. mas aqui se utilizo da distorção no resultado do Desvio Padrão..

    Saudações
    criquio
    criquio
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

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

    [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox... Empty Re: [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox...

    Mensagem  criquio em 6/9/2011, 23:16

    Como você está tirando a primeira linha, talvez tenha que tirar ela da contagem tambem:

    For j = 1 To Me!Lista.ListCount - 2: Seq = Seq & Me!Lista.Column(2, j) & "~": Next

    Só como exemplo. Talvez tenha que fazer o ajuste em outro local.


    .................................................................................
    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.

    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3491
    Registrado : 04/04/2010

    [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox... Empty Re: [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox...

    Mensagem  Avelino Sampaio em 6/9/2011, 23:27

    Hary

    Segue modificação. Altere o código no meu exemplo, depois adapte par o seu

    Código:
    Private Function fncDesvio() As Double
    Dim k, j As Long, Seq As String, media As Double, soma As Double

    If Me!Lista.ListCount < 2 Then
        Exit Function
    End If
    If Me!Lista.ListCount = 2 Then
        fncDesvio = Me!Lista.Column(2, 1)
        Exit Function
    End If

    For j = 1 To Me!Lista.ListCount - 1: Seq = Seq & Me!Lista.Column(2, j) & "~": Next
    Seq = Left(Seq, Len(Seq) - 1)
    k = Split(Seq, "~")
    For j = 0 To UBound(k): soma = soma + k(j): Next
    media = soma / (Me!Lista.ListCount - 1)
    soma = 0
    For j = 0 To UBound(k): soma = soma + ((media - k(j)) ^ 2): Next
    fncDesvio = Sqr(soma / (Me!Lista.ListCount - 2))
    End Function

    Eu só tenho uma dúvida. Se a lista retornar um único valor. Exemplo: 20 Qual seria o resultado ? Bom, coloquei como retornando o mesmo valor

    Sucesso!
    HARYSOHN
    HARYSOHN
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12227
    Registrado : 01/03/2011

    [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox... Empty Re: [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox...

    Mensagem  HARYSOHN em 6/9/2011, 23:36

    Dever ser o mesmo valor.. Perguntarei isso a pessoas a qual estou a tratar deste assunto.. amnha posto aqui..

    Obrigado Avelino e Criquio pela sempre pronta ajuda...

    Tenham uma ótima noite

    Cumprimentos
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3491
    Registrado : 04/04/2010

    [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox... Empty Re: [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox...

    Mensagem  Avelino Sampaio em 6/9/2011, 23:42

    Olá Hary

    Atualizei o exemplo. Basta baixar novamente.


    Boa Noite


    Sucesso!
    HARYSOHN
    HARYSOHN
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12227
    Registrado : 01/03/2011

    [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox... Empty Re: [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox...

    Mensagem  HARYSOHN em 7/9/2011, 11:52

    Bom dia Mestre Avelino... Perfect!!!!


    É um bom exemplo para a sala de repositório.. poderia o colocar ali...

    Obrigado mais uma vez...

    Cumprimentos
    HARYSOHN
    HARYSOHN
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12227
    Registrado : 01/03/2011

    [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox... Empty Re: [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox...

    Mensagem  HARYSOHN em 7/9/2011, 12:02

    Para colocar a ooluna variando na função....
    Private Function fncDesvio(N As Double) As Double
    Dim k, j As Long, Seq As String, media As Double, soma As Double

    If Me!lstConsulta.ListCount < 2 Then
    Exit Function
    End If
    If Me!lstConsulta.ListCount = 2 Then
    fncDesvio = Me!lstConsulta.Column(N, 1)
    Exit Function
    End If

    For j = 1 To Me!lstConsulta.ListCount - 1: Seq = Seq & Me!lstConsulta.Column(N, j) & "~": Next
    Seq = Left(Seq, Len(Seq) - 1)
    k = Split(Seq, "~")
    For j = 0 To UBound(k): soma = soma + k(j): Next
    media = soma / (Me!lstConsulta.ListCount - 1)
    soma = 0
    For j = 0 To UBound(k): soma = soma + ((media - k(j)) ^ 2): Next
    fncDesvio = Sqr(soma / (Me!lstConsulta.ListCount - 2))
    End Function


    Para chamar:
    Me.txtdesvpad = fncDesvio(12)

    Obrigado.


    Última edição por Harysohn em 7/9/2011, 12:11, editado 1 vez(es)
    HARYSOHN
    HARYSOHN
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12227
    Registrado : 01/03/2011

    [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox... Empty Re: [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox...

    Mensagem  HARYSOHN em 7/9/2011, 12:06

    E para encerrar o tópico com chave de ouro.. a função utilizando tabela...

    Código:

    Private Sub DesvPadrao()
    Dim i

    'para looping em listBox
    For i = 1 To Me.lstConsulta.ListCount - 1
    'Insiro o registro na tabela temporária
    CurrentDb.Execute "INSERT INTO TMP(Valores) Values(""" & Me.lstConsulta.Column(12, i) & """);"
    Next i
    '---------------------------------------------------------
    'Cálculo de desvio padrão
    Dim dblX As Double
    Dim dblY As Double

    'Desvio Padrão
    dblX = DStDev("[Valores]", "TMP")
    Me.txtdesvpad = dblX
    ' Population estimate.
    'dblY = DStDevP("[Valores]", "TMP")
    'MsgBox dblY
    'Aqui você elimina a tabela
    CurrentDb.Execute "DELETE * FROM TMP"

    End Function


    Como função, Variando a coluna

    Código:

    Private Function DesvPadrao(N As Double)
    Dim i

    'para looping em listBox
    For i = 1 To Me.lstConsulta.ListCount - 1
    'Insiro o registro na tabela temporária
    CurrentDb.Execute "INSERT INTO TMP(Valores) Values(""" & Me.lstConsulta.Column(N, i) & """);"
    Next i
    '---------------------------------------------------------
    'Cálculo de desvio padrão
    Dim dblX As Double
    Dim dblY As Double

    'Desvio Padrão
    dblX = DStDev("[Valores]", "TMP")
    Me.txtdesvpad = dblX
    ' Population estimate.
    'dblY = DStDevP("[Valores]", "TMP")
    'MsgBox dblY
    'Aqui você elimina a tabela
    CurrentDb.Execute "DELETE * FROM TMP"



    End Sub


    Cumprimentos

    Conteúdo patrocinado

    [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox... Empty Re: [Resolvido]Cálculo de Desvio Padrão em coluna de ListBox...

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 18/6/2019, 14:17