[EXCEL] Arrondir un chiffre à l'entier supérieur

Arrondir un chiffre à l'entier supérieur [EXCEL] - Logiciels - Windows & Software

Marsh Posté le 21-07-2005 à 15:05:21    

Salut à tous.
 
Je cherche à arrondir les cellules d'un tableau à l'entier supérieur, et ce quelque soit la valeurs des décimales (en fait, si je rentre 100,1, je veux qu'il m'affiche 102...) Pour l'instant, il arrondit au supérieur si la décimale est de 5 ou supérieure uniquement...
 
Je vous remercie beaucoup...
Fredhali2000

Reply

Marsh Posté le 21-07-2005 à 15:05:21   

Reply

Marsh Posté le 21-07-2005 à 15:09:33    

Reply

Marsh Posté le 21-07-2005 à 15:37:03    

En fait j'ai trouvé un =arrondi.sup(nombre;0), mais en fait comme c'est une fonction, elle ne peut etre appliquée à un nombre que je rentre directement dans la colonne...
Moi ce que je cherche c'est un paramètre dde format de cellule "nombre" qui permette de formatter un cellule de manière à ce que tout nombre inscrit dedans soit automatiquement arrondi à l'entier supérieur...
 
Merci


Message édité par Profil supprimé le 21-07-2005 à 15:37:31
Reply

Marsh Posté le 21-07-2005 à 15:46:15    

C'est pas possible???

Reply

Marsh Posté le 21-07-2005 à 16:04:42    

Comment on fait???
S'il vous plait...

Reply

Marsh Posté le 21-07-2005 à 16:08:43    

je vois ce que tu veux faire càd que tes données soit vues de cette manière (arrondi à l'entier supérieur).
Une solution pour contourner ton problème serait de copier l'integralité des données dans une nouvelle feuille et d'appliquer la fonction round. Le problème c'est qu'à chaque modification il faudra mettre les données de la nouvelle feuille à jour :(  

Reply

Marsh Posté le 21-07-2005 à 16:09:06    

normallement la fonction "ceil" fait ca, mais je ne connais ri1 a MS Excel

Reply

Marsh Posté le 21-07-2005 à 16:09:36    

Ouais c'est compliqué, non?

Reply

Marsh Posté le 21-07-2005 à 16:11:54    

ceil(5.3) retournera 6

Reply

Marsh Posté le 21-07-2005 à 16:12:27    

c'est une fonction math. basique dc elle doit etre disponible

Reply

Marsh Posté le 21-07-2005 à 16:12:27   

Reply

Marsh Posté le 21-07-2005 à 16:15:40    

oui mais c'est une fonction, donc on ne peut ecrire une valeur par au dessus après...

Reply

Marsh Posté le 21-07-2005 à 16:25:26    

youhou

Reply

Marsh Posté le 22-07-2005 à 13:59:54    

UPUPUP

Reply

Marsh Posté le 22-07-2005 à 14:23:51    

Tu ne trouveras pas de solution. Seule l'utilisation d'une fonction te permettra cela. Le choix du "format" de la cellule arrondira toujours à l'entier le plus proche.

Reply

Marsh Posté le 22-07-2005 à 14:24:59    

Donc, c'est absolument impossible de faire cela avec EXCEL???
C'est bizarre...
Merci à tous

Reply

Marsh Posté le 22-07-2005 à 19:25:18    

Salut,  
 
Oui, c'est impossible de faire ce que tu demandes car ton arrondi supérieur changerait la valeur de la donnée saisie.
Le formatage en nombre entier ou avec décimales présente une cellule d'une certaine manière sans altérer la valeur qu'elle contient.
Donc il te faut bien deux zones, une pour entrer tes données et l'autre pour les retraiter avec une fonction comme ARRONDI.SUP. Néanmoins, après avoir fait le retraitement, tu pourras copier les valeurs arrondies et les coller dans ta zone de saisie au moyen d'un collage spécial / valeurs. Ceci étant fait, tu pourras effacer, supprimer, voire exterminer la zone de retraitement.
 
A+
Horatio
 
 
 
 
 

Reply

Marsh Posté le 22-07-2005 à 19:42:23    

Re,
 
En y regardant de plus près, on peut trouver une solution par macro :
 

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 Then
  If Target - Int(Target) > 0 Then
    Target = Int(Target) + 1
  End If
End If
End Sub


 
Dans cet exemple, on guette les changements effectués dans la colonne B (Target.Column = 2).
Si la valeur de la cellule active (Target) est supérieure à sa valeur entière : Int(Target),  
on ajoute 1 à la valeur entière.
Et ça roule !
 
Dis-moi si tu connais un peu VBA pour placer cette macro au bon endroit.
 
A+
Horatio.
 

Reply

Marsh Posté le 08-08-2005 à 09:25:28    

Salut Lord Nelson.
Je ne connais pas le VBA, mais je suis ouvert à tes suggestions...
Je te remercie beaucoup.
Xcuze du delai de réponse, mais je reviens  de vacances.


Message édité par Profil supprimé le 09-08-2005 à 09:24:55
Reply

Marsh Posté le 08-08-2005 à 21:01:16    

Ca marche pas, ça, non ?
 
Sauf si target=int(target) (donc target est entier), on a toujours target-int(target) positif. Enfin si target est positif.
 
Comment veux tu que ça réagisse dans le cas d'une valeur négative ? Toujours l'entier supérieur ? Ou bien le cas ne se présente pas ?
 
mon idée, en comparant (target+0,5) à int(target) :
si int(target+0,5)=int(target), alors int(target)+1 sinon round(target;0)
 
(je crois que, pour la dernière expression, c'est la syntaxe correcte pour arrondir le chiffre sans décimales : je suis pas sûr mais c'est l'idée)


Message édité par Prozac le 08-08-2005 à 21:02:33

---------------
La ligne droite n'est en aucun cas le plus court chemin entre deux points. Sauf, bien sûr, si les deux points sont bien alignés l'un en face de l'autre
Reply

Marsh Posté le 09-08-2005 à 09:39:09    

Ou dois-je entrer le code dans excel???

Reply

Marsh Posté le 09-08-2005 à 10:07:08    

Ca marche merci nelson

Reply

Marsh Posté le 09-08-2005 à 10:07:29    

Je ne sais pas encore ce que je dois faire des valeurs négatives...

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed