Ir para conteúdo
Fórum Script Brasil
  • 0

Commo Recuperar O Número Depois Da Virgula


ju_rezende

Pergunta

Olá pessoal,

Tenho em uma página um divisão, estou tentando recuperar o valor depois da virgula

Utilizei este recurso pagina= right(pagina,1)

porém, ele não está funcionando corretamente

exemplo o resultado desta divisão deu 2,2666667, ele pegou o valor 7, mas eu preciso que peguer sempre o valor depois da virgula nesta cado o 6

Mas não sei como resolver este problema.

Será que alguém poderia me ajudar?

Grata pela atenção de todos

Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0

Usa InStr e Mid.

Ex.:

Dim Num,DepoisDaVirg

Num = "2,667"

DepoisDaVirg=Mid(Num,InStr(1,Num,",")+1,1)

Mid(String,Posição inicial,Qtde de caractres)

InStr(procurar á partir de,onde procurar, o que procurar) *Se não encontrar, retorna 0(zero).

Editado por Principe
Link para o comentário
Compartilhar em outros sites

  • 0

Olá amigo, consegui fazer da forma como colocou acima, porém quando o valor é 0 ele me retorna o valor do número antes da virgula e não o zero como deveria ocorrer.

Veja se eu fiz certo

pagina=rs3.recordcount/produtos

pagina1=Mid(pagina,InStr(1,pagina,",")+1,1)

Depois eu utilizo ele para mfazer o cálculo

if pagina1>0 and pagina1<=1 then

pagina1=pagina1+1

else if pagina1 and pagina1<=2 then

pagina=pagina + 0.9

else if pagina1>=2 and right(pagina,1)<=3 then

pagina=pagina + 0.8

else if pagina1>=3 and pagina1<=4 then

pagina=pagina + 0.7

else if pagina1>=4 and pagina1<=5 then

pagina=pagina + 0.6

else if pagina1>=5 and pagina1<=6 then

pagina=pagina + 0.5

else

pagina=cint(pagina)

end if

end if

end if

end if

end if

end if

Será que eu fiz algo errado?

Obrigada pela atenção

Link para o comentário
Compartilhar em outros sites

  • 0

Pelo que percebi você quer fazer paginação, certo?

Então, para ter a quantidade de páginas necessárias para exibir todos os dados, faça de uma forma mais prática:

<%

Dim Regs,Pags

Const MxRegs=10 'Máximo de registros por página

Regs=rs.RecordCount

Pags=Regs/MxRegs

If Int(Pags) < Pags Then Pags=Int(Pags)+1

%>

Link para o comentário
Compartilhar em outros sites

  • 0

tentei usar o seu exemplo, mas não funcionou.

Sabe se tem como no codigo que eu enviei anteriormente verificar se a divisão for interira, ele não faz aquele if, se a divizão de número com cassas decimais, aí faz aquele if, Antes eu estava com problemas somente para a divisão que desse valor com casas decimais, porém o e o mid resolveu este problema, o único problema agora é que não sei como verificar se a divisão é numero inteiro.

se eu conseguir isso resolve o problema.

Grata pela atenção.

Abraços

Link para o comentário
Compartilhar em outros sites

  • 0

Então, é bem isso que eu fiz

Divisao=registros/maximo_de_registros

If Int(Divisao) < Divisao Then Divisao=Int(Divisao)+1

Se o Inteiro_de(Divisao) é_menor_que Divisao Então Divisao é Inteiro_de(Divisao) + 1

---

Vamos supor que Divisao retorne 3,6

Então fica algo do tipo

Se 3 é_menor_que 3,6 então 3+1

Eu sempre usei assim (e uso ainda) e sempre funciona perfeitamente.

Veja se o Inteiro do número é menor que a divisão usando Int().

Se for menor, pega o inteiro e soma UM.

Assim você tem o número de páginas necessárias. Simples. É lógica. Não tem segredo. Matemática básica.

Para ver se é inteiro ou não faça

If Int(Numero) <> Numero Then

'Não é inteiro

End If

Editado por Principe
Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...