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 :

Approximation de la fonction nombre décimal


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2011
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2011
    Messages : 108
    Par défaut Approximation de la fonction nombre décimal
    Bonjour à tous


    Je tiens à fonctionner selon les conditions suivantes

    Si la valeur de la cellule 100.10 ou 100.11 ou 100.12 ou 100.13 ou 100.14 = 100.10

    Si la valeur de la cellule 100.15 ou 100.16 ou 100.17 ou 100.18 ou 100.19 = 100.15

    Si la valeur de la cellule 100.20 ou 100.21 ou 100.22 ou 100.23 ou 100.24 = 100.20

    Si la valeur de la cellule 100.25 ou 100.26 ou 100.27 ou 100.28 ou 100.29 = 100.25

    J'espère être une demande claire

    Merci d'avance

  2. #2
    Membre averti
    Inscrit en
    Mars 2003
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Mars 2003
    Messages : 23
    Par défaut Reponse Arrondi Decimal
    Bonjour

    En réponse à ton probléme d'arrondi décimal, je te propose ce code qui marche super bien.

    Démarre excel, puis L'éditeur visual basic, il faut insérer un module dans le quel il faut copier le code suivant; il s'agit d'une nouvelle fonction pour excel, écrite en VBA.
    Dans une cellule excel met n'importe quel nombre avec des décimales, puis dans une autre cellule on va calculer l'arrondi décimal de cette premiére cellule.
    Met le curseur sur la cellule cible et clique sur le bouton insérer une fonction de excel fx, la boite de dialogue insérer une fonction s'ouvre. Dans la liste déroulante Ou sélectionnez une catégorie, selectionnez Personnalisées
    et recherchez la fonction Arrondi_Decimal, il ne reste plus qu'a sélectionner la cellule a arrondir.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Function Arrondi_Decimal(x As Double) As Double
    Dim t As Double
    Dim y As Double
    Dim q As Double
        t = x - Int(x)
        y = 100 * t
        q = Int(y / 5)
    Arrondi_Decimal = Int(x) + 5 * q / 100
    End Function
    J'attends ta réponse

  3. #3
    Membre actif
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2011
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2011
    Messages : 108
    Par défaut
    Bonjour BEMI

    excellent travail

    noter :

    nombre 1.20 = 1.20 pas 1.15

    S'il vous plaît amendement

    Merci beaucoup encore une fois professeur BEMI

  4. #4
    Membre Expert

    Homme Profil pro
    Retraité
    Inscrit en
    Juin 2012
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2012
    Messages : 1 564
    Billets dans le blog
    1
    Par défaut
    Bonjour,
    Une formule permettant de ne pas entrer de code VBA pour une fonction personnalisée
    Avec un nombre décimal en A1, entrer la formule
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =ARRONDI.INF(A1;1)+CHOISIR(1+(MOD(100*A1;10)>=5);0;0,05)
    Cordialement
    Claude

  5. #5
    Membre actif
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2011
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2011
    Messages : 108
    Par défaut
    papouclo Bonjour

    Résultat de fonction incorrect

    témoin Fichiers attaché

    Je veux que le résultat dans la colonne "E"
    Fichiers attachés Fichiers attachés

  6. #6
    Membre Expert

    Homme Profil pro
    Retraité
    Inscrit en
    Juin 2012
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2012
    Messages : 1 564
    Billets dans le blog
    1
    Par défaut
    Bonjour,
    Si on est sûr que les décimaux entrés en données dans la colonne A sont obligatoirement des décimaux d'ordre 2 (au maximum 2 chiffres après la virgule) écrire comme formule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =ARRONDI.INF(A2;1)+CHOISIR(1+(MOD(100*A2;10)>4);0;0,05)
    le décimal à arrondir étant en A2.
    S'il peut y avoir des décimaux d'ordre 3 ou plus, écrire comme formule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =ARRONDI.INF(A2;1)+CHOISIR(1+OU(MOD(100*A2;10)>5;MOD(100*A2;10)=5);0;0,05)
    Cordialement
    Claude

Discussions similaires

  1. Réponses: 4
    Dernier message: 21/12/2005, 12h20
  2. [VB.NET] Nombre décimal
    Par Sadneth dans le forum ASP.NET
    Réponses: 8
    Dernier message: 25/11/2005, 12h41
  3. insérer un nombre décimale dans une table
    Par mouloudéen dans le forum Access
    Réponses: 4
    Dernier message: 02/10/2005, 21h29
  4. CRITERIA - Représentation binaire d'un nombre décimal signé.
    Par RamDevTeam dans le forum Décisions SGBD
    Réponses: 1
    Dernier message: 10/08/2005, 14h56
  5. Réponses: 9
    Dernier message: 24/05/2005, 16h34

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