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 :

Dépassement de capacité [XL-2016]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Homme Profil pro
    chef de projet transverse MOE
    Inscrit en
    Janvier 2015
    Messages
    121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : chef de projet transverse MOE
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2015
    Messages : 121
    Par défaut Dépassement de capacité
    Bonjour,

    petit probeme de depassement de capacité:

    J'ai le tableau suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Dim tabcolors(5) As colorPlayed
     
    Public Type colorPlayed
        Color As String
        NbPlayed As Integer
        NbWin As Integer
        PerPlayed As Double
        PerWin As Double
    End Type
    L'instruction suivante plante en dépassement de capacité:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    tabcolors(i).PerPlayed = (tabcolors(i).NbPlayed * 100) / (NbPlayedTotal)
    Les valeurs ont les suivantes: i = 2, Nbplayed = 341, NbPlayedTotal =726.
    Dans la fenetre espion, c'est directement le calcul (tabcolors(i).NbPlayed * 100) / (NbPlayedTotal) qui est en dépassement de capcité. par contre, le même calcul pour l'enregistrement 1 fonctionne avec ces valeurs: i = 1, nbplayed = 317 et nbplayedtotal = 726...

    Je reste perplexe...

    Une idée?

    Est ce que cela pourrait être du au fait que le calcul donne un nombre infini? (46,96969696...) je ne vois pas comment faire pour demander au calculateur de faire un arrondi à partir d'un certain moment pour éviter ce dépassement de capcité si c'est du à ca...

    Merci d'avance!

  2. #2
    Membre expérimenté
    Homme Profil pro
    chef de projet transverse MOE
    Inscrit en
    Janvier 2015
    Messages
    121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : chef de projet transverse MOE
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2015
    Messages : 121
    Par défaut
    Ok, je pense avoir trouvé tout seul.
    J'ai changé une des variables en Double (une qui sert au calcul, pas celle qui reçoit le résultat), et du coup ca passe...
    Les deux variables utilisées dans le calcul étaient des integer. Excel doit probablement utiliser une zone tampon qui a un format dépendant des variables utilisées... très étrange.

    Si quelqu'un a une explication plus précise, je suis preneur.

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

Discussions similaires

  1. Réponses: 12
    Dernier message: 17/10/2014, 17h08
  2. Transaction, Dépassement de capacité
    Par SkYsO dans le forum MS SQL Server
    Réponses: 9
    Dernier message: 23/12/2008, 15h56
  3. Dépassement de capacité
    Par jean-pierre96 dans le forum Access
    Réponses: 2
    Dernier message: 10/05/2006, 17h04
  4. Réponses: 8
    Dernier message: 06/02/2006, 15h34
  5. détection de dépassement de capacité
    Par tut dans le forum C++
    Réponses: 10
    Dernier message: 01/12/2004, 23h11

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