[VBA Excel] partie entière sup

Résolu
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. Contributeur
    Bonjour,

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

    eric
    7
    1. exact
      0
  2. 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. 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
  3. 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
    1. 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. effectivement ça peut marcher.
        j'espérais qu'il existe quelque chose de plus simple, mais pourquoi pas...
        en tous cas merci !
        0
    2. Bonjour,

      pour ent (A1 +0.5) on a la valeur approchée
      2
      1. Exact ! C'est parfait !
        0
    3. 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