IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Faire une division et arrondir [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2013
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2013
    Messages : 36
    Par défaut Faire une division et arrondir
    Bonjour,

    je fais une division du style :

    73 / 4

    je veux en résultat 18, 18, 18 et 19.


    exemple de mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    ElseIf conges <= 61 And conges <= 80 Then
                    conges = conges / 4
                    Cells(ligneconges, 12).Value = conges
                    Cells(ligneconges, 13).Value = conges
                    Cells(ligneconges, 14).Value = conges
                    Cells(ligneconges, 15).Value = conges
    Le problème là c'est que j'ai 18.25, 18.25, 18.25 et 18.25

    Avez-vous une idée ?

  2. #2
    Expert éminent

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 590
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 590
    Par défaut
    Bonjour

    Voir la fonction round.

  3. #3
    Invité
    Invité(e)
    Par défaut Bonjour, test ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Sub Test()
    Dim toto As Long
    toto = 73 / 4
     conges = CLng(conges / 4)
    End Sub

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mars 2013
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2013
    Messages : 36
    Par défaut
    j'ai résolu mon problème en effectuant une autre approche.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    If conges <= 20 Then
                    Cells(ligneconges, 12).Value = conges
                ElseIf conges >= 21 And conges <= 40 Then
                    Cells(ligneconges, 12).Value = 20
                    conges = conges - 20
                    Cells(ligneconges, 13).Value = conges
                ElseIf conges >= 41 And conges <= 60 Then
                    Cells(ligneconges, 12).Value = 20
                    Cells(ligneconges, 13).Value = 20
                    conges = conges - 40
                    Cells(ligneconges, 14).Value = conges
                ElseIf conges >= 61 And conges <= 80 Then
                    Cells(ligneconges, 12).Value = 20
                    Cells(ligneconges, 13).Value = 20
                    Cells(ligneconges, 14).Value = 20
                    conges = conges - 60
                    Cells(ligneconges, 15).Value = conges
                Else

    voilà bonne journée et merci.

  5. #5
    Membre Expert
    Homme Profil pro
    retraité
    Inscrit en
    Mars 2013
    Messages
    885
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2013
    Messages : 885
    Par défaut faire une division et arrondir
    bonsoir,

    une autre approche,certes!
    Espérons seulement que tu n'auras pas à gérer 100 jours de congés.
    Essais ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
     
    Sub congé()
    conges = Cells(1, 1)
    If conges <= 20 Then
        Cells(2, 3) = conges
    Else
        entier = Int(conges / 20)
        For i = 1 To entier
            Cells(2, i + 2) = 20
        Next i
        Cells(2, i + 2) = conges - (20 * entier)
    End If
    End Sub
    cordialement.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. faire une division entre deux sommes
    Par dylane.sof dans le forum SQL
    Réponses: 8
    Dernier message: 13/08/2007, 17h45
  2. Faire une division sur Access
    Par Mamybel dans le forum Access
    Réponses: 3
    Dernier message: 23/08/2006, 19h06
  3. comment faire une division vertical ?
    Par mamiberkof dans le forum Général Conception Web
    Réponses: 2
    Dernier message: 06/04/2006, 17h50
  4. Faire une division entre deux chiffres?
    Par shun dans le forum Langage SQL
    Réponses: 9
    Dernier message: 09/09/2005, 17h37
  5. Comment faire une division par 5 avec les decalages
    Par Zaion dans le forum Assembleur
    Réponses: 7
    Dernier message: 05/11/2004, 18h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo