Notifications
Clear all

Casas Decimais

3 Posts
2 Usuários
0 Reactions
1,307 Visualizações
selmo
(@selmo)
Posts: 236
Estimable Member
Topic starter
 

Bom dia Galera
Alguem saberia me dizer se existe uma função ou uma forma de descobri se o resultado de um numero é decimal ou não. Tenho uma rotina para cubagem

Sub calculo4()
LP = 120
CP = 100
AP = 13

LC = 23
CC = 36
AC = 23

CCT = LC * CC * AC / 1000 'CUBAGEM DA CAIXA
CPT = LP * CP * AP / 1000 'CUBAGEM DO PALETE

CLP = LP * CP * AC / 1000 'CUBAGEM BASEADO NA CAIXA POR CAMADA

QCL = CLP / CCT 'total de caixas em 1 lastro

qtd1 = LP / LC * CP / CC
QTD2 = LP / CC * CP / LC

MsgBox "cubagem 1: " & qtd1 & "cubagem 2: " & QTD2
End Sub

No caso ela retorna 14,49, só que não posso quebrar uma caixa rs, então teria que sempre que o numero for decimal, então -1. Seria o caso de trabalhar com proporções, mais ainda quebro a cabeça com isso tambem :p

"A mente que se abre a uma nova ideia jamais voltará ao seu tamanho original."
Albert Einstein

 
Postado : 22/12/2015 9:24 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde,

Veja se o código abaixo atende:

Function Inteiro(n As Double) As Boolean
    If CInt(n) = n Then Inteiro = True Else Inteiro = False
End Function

Abraço

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 22/12/2015 11:59 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Uma outra alternativa :

Sub calculo4()

    LP = 120
    CP = 100
    AP = 13

    LC = 23
    CC = 36
    AC = 23

    CCT = LC * CC * AC / 1000 'CUBAGEM DA CAIXA
    CPT = LP * CP * AP / 1000 'CUBAGEM DO PALETE

    CLP = LP * CP * AC / 1000 'CUBAGEM BASEADO NA CAIXA POR CAMADA

    QCL = CLP / CCT 'total de caixas em 1 lastro

    qtd1 = LP / LC * CP / CC
    qtd2 = LP / CC * CP / LC
    
    'Separa a parte inteira
    ParteInteira = Int(qtd2)
    'Separa a parte decimal
    ParteDecimal = qtd2 - ParteInteira
    
    'Se numero inteiro
    If qtd2 = Int(qtd2) Then
        MsgBox "Numero Inteiro : = " & ParteInteira
    Else
        MsgBox "Resto Decimal : = " & ParteDecimal
    End If
    
    MsgBox "cubagem 1: " & qtd1 & "cubagem 2: " & qtd2
    
    End Sub

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 22/12/2015 12:21 pm