[VBA Excel] partie entière sup

Résolu
lalilu Messages postés 36 Statut Membre -  
 chtioui -
Bonjour,

existe-t-il en VBA une fonction renvoyant la partie entière supérieure d'un réel ?
expl :
si x = 2.1 --> partie_entière_sup (x) = 3

merci d'avance !
Configuration: Windows XP
Internet Explorer 6.0

6 réponses

  1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Bonjour,

    Vu que ENT() retourne l'entier inférieur et bien fait :
    =-ENT(-A1)

    eric
    7
    1. chtioui
       
      exact
      0
  2. Ivan-hoe Messages postés 433 Date d'inscription   Statut Membre Dernière intervention   310
     
    Pour compléter la réponse de Caméléon : en VBA, ENT s'appelle Int(MonNombre) ou Fix(MonNombre)
    Attention si tu manipules des nombres négatifs (voir l'aide)
    I.
    2
  3. titi
     
    Bonjour,

    pour ent (A1 +0.5) on a la valeur approchée
    2
    1. Napier
       
      Exact ! C'est parfait !
      0
  4. kerfoul Messages postés 21 Statut Membre 8
     
    La fonction ARRONDI.SUP peut aussi donner la partie entière supérieure

    ARRONDI.SUP
    Arrondit un nombre en s'éloignant de 0 (zéro).

    Syntaxe

    ARRONDI.SUP(nombre;no_chiffres)

    nombre : représente un nombre réel quelconque à arrondir en s'éloignant de zéro.

    no_chiffres : représente le nombre de chiffres à prendre en compte pour arrondir l'argument nombre.

    Notes

    La fonction ARRONDI.SUP est similaire à la fonction ARRONDI, excepté qu'elle arrondit toujours le nombre en s'éloignant de zéro.
    Si l'argument no_chiffres est supérieur à 0 (zéro), le nombre est arrondi à la valeur immédiatement supérieure (ou inférieure pour les nombres négatifs) et comporte le nombre de décimales spécifié.
    Si l'argument no_chiffres est égal à 0 ou omis, le nombre est arrondi au nombre entier immédiatement supérieur.
    Si l'argument no_chiffres est inférieur à 0, le nombre est arrondi à la valeur immédiatement supérieure (ou inférieure si négative) par incrémentations de 10, 100, etc., en fonction de la valeur de no_chiffres.

    Exemple

    L'exemple sera plus compréhensible si vous le copiez dans une feuille de calcul vide.

    =ARRONDI.SUP(3,3;0) Arrondit 3,3 à la valeur entière immédiatement supérieure (4)
    =ARRONDI.SUP(76,8;0) Arrondit 76,8 à la valeur entière immédiatement supérieure (77)

    --
    2
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. cameleon33 Messages postés 635 Statut Membre 50
     
    Bonjour,

    Tu as la fonction ENT(nombre) dans Excel qui te renvoie l'entier inférieur... Donc ENT(nombre)+1 te donne l'entier supérieur.
    1
    1. lalilu Messages postés 36 Statut Membre 1
       
      oui j'y avais pensé aussi mais dans mon cas ça ne marche pas :
      si Int(x) est la parie entière inf de x et Sup(x) la partie entière sup.
      pour x = 3.0 (par exemple) je voudrai que Int(3.0) = 3 et Sup (3.0) = 3 aussi.
      merci quand même !
      0
  7. Steefif Messages postés 526 Statut Membre 19
     
    tu peux mettre ca dans une boucle if
    if mon_nombre mod 1 = 0 then
    partie_entiere_sup (mon-nombre) = mon_nombre
    else
    partie_entiere_sup(mon_nombre) = fix(mon_nombre) + 1
    end if
    0
    1. lalilu Messages postés 36 Statut Membre 1
       
      effectivement ça peut marcher.
      j'espérais qu'il existe quelque chose de plus simple, mais pourquoi pas...
      en tous cas merci !
      0