<%
if bim1.Fields.Item("Nota3").value = "O" or bim1.Fields.Item("Nota3").value = "Ótimo" then
nota3=30
else if bim1.Fields.Item("Nota3").value = "MB" or bim1.Fields.Item("Nota3").value = "Muito bom" then
nota3=28
else if bim1.Fields.Item("Nota3").value = "B" or bim1.Fields.Item("Nota3").value = "Bom" then
nota3=26
else if bim1.Fields.Item("Nota3").value = "R" or bim1.Fields.Item("Nota3").value = "Regular" then
nota3=23
else if bim1.Fields.Item("Nota3").value = "*" then
nota3=0
else
On Error resume Next
cdbl(bim1.Fields.Item("Nota3").value)
If Err.number<>0 then
Materia = bim1.Fields.Item("Materia Listar").value
valor = bim1.Fields.Item("Nota3").value
strMsg = "Verifique a nota de "&materia&" do 3º Bimestre. A existência de caracteres diferentes de O, MB, B, R, *, números decimais com separador que não seja vírgula ou estes caracteres juntos com espaço impedem a elaboração do boletim! A nota atual é: "&valor
Response.Write "<script>alert('" & strMsg & "');window.close();</script>"
else nota3 = FormatNumber(cdbl(bim1.Fields.Item("Nota3").value),2)
end if
end if
end if
end if
end if
end if
%>
Este código criei para diferenciar notas de Educação Fisica, que são usadas letras ao invés de numeros, então ele pega as letras e converte em uma nota, para que depois no final eu possa calcular uma média e atribuir uma letra (nota final) para o aluno, mas se a nota do aluno não for letras como aquela o valor do campo que é texto do bd do access eu uso o cdbl para converter em numero decimal (tipo: 23,21), para depois calcular a nota final normalmente, porém as secretarias as vezes falham ao digitar as notas, digitam por exemplo 23,,11 o que o cdbl não aceita, então quis usar o "On Error" para identificar a falha e em um alert mostra que matéria está o erro, para que as secretarias possam saber onde consertar o erro, porém ao executar esse código, por Educação Física tudo funciona normal, mais quando chega em uma nota toda hora ele executa o ALERT, mesmo a nota estando correta!
Pergunta
Guilherme Teixeira
Olá amigos boa tarde,
é o seguinte:
Este código criei para diferenciar notas de Educação Fisica, que são usadas letras ao invés de numeros, então ele pega as letras e converte em uma nota, para que depois no final eu possa calcular uma média e atribuir uma letra (nota final) para o aluno, mas se a nota do aluno não for letras como aquela o valor do campo que é texto do bd do access eu uso o cdbl para converter em numero decimal (tipo: 23,21), para depois calcular a nota final normalmente, porém as secretarias as vezes falham ao digitar as notas, digitam por exemplo 23,,11 o que o cdbl não aceita, então quis usar o "On Error" para identificar a falha e em um alert mostra que matéria está o erro, para que as secretarias possam saber onde consertar o erro, porém ao executar esse código, por Educação Física tudo funciona normal, mais quando chega em uma nota toda hora ele executa o ALERT, mesmo a nota estando correta!
Alguém poderia me dar alguma dica?
Obrigado!
Link para o comentário
Compartilhar em outros sites
6 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.