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 :

Réaliser des calculs avec variable


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Homme Profil pro
    Financier
    Inscrit en
    Juillet 2019
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Financier

    Informations forums :
    Inscription : Juillet 2019
    Messages : 41
    Points : 19
    Points
    19
    Par défaut Réaliser des calculs avec variable
    Bonjour à tous
    Je viens vers vous car j'aimerais comprendre comment réaliser mes calculs avec VBA

    J'ai fait la macro suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    Sub testdecal()
     
    Dim z As Integer
    Dim x As Integer
    Dim y As Integer
     
     
    x = 1 / 25
    y = 60 / 80
     
    z = x / (1 - y)
     
    MsgBox z
     
    End Sub
    Mon but : calculer z et afficher la valeur en msgBox, or ma msgbox affiche actuellement 0 au lieu de 0.16 dans cet exemple

    Help please

  2. #2
    Membre régulier
    Homme Profil pro
    Responsable des études
    Inscrit en
    Décembre 2012
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Décembre 2012
    Messages : 51
    Points : 82
    Points
    82
    Par défaut
    Bonjour,

    essaye en modifiant ton type de variable de Integer à Single, normalement ça devrait le faire.

    Vas voir au lien ci dessous c'est expliqué

    https://silkyroad.developpez.com/VBA...riables/#LII-C

  3. #3
    Membre chevronné Avatar de Thumb down
    Homme Profil pro
    Retraité
    Inscrit en
    Juin 2019
    Messages
    1 419
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juin 2019
    Messages : 1 419
    Points : 2 178
    Points
    2 178
    Par défaut
    Bonjour,
    pourquoi tu ne luis explique pas qu'un integer (Entier) ferra un arrondi à zéro si l’opération retourne une valeur décimal plus petit que zéro!

    il est préférable d'utiliser double!

    un doc de 1000 mots c'est bien pour approfondir!

  4. #4
    Membre régulier
    Homme Profil pro
    Responsable des études
    Inscrit en
    Décembre 2012
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Décembre 2012
    Messages : 51
    Points : 82
    Points
    82
    Par défaut
    Bonjour,

    J'ai commencé avec ça et à l'époque ça m'a beaucoup aidé, et comme ça il a une vue global de tous les types de variables.

    Et il pourra définir s'il est mieux avec un single ou un double

  5. #5
    Membre à l'essai
    Homme Profil pro
    Financier
    Inscrit en
    Juillet 2019
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Financier

    Informations forums :
    Inscription : Juillet 2019
    Messages : 41
    Points : 19
    Points
    19
    Par défaut
    Merci pour vos réponses, effectivement j'ai du mal à définir le type pour mes variables à chaque fois , je ne sais pas pourquoi.

  6. #6
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 904
    Points : 10 168
    Points
    10 168
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    Citation Envoyé par Thumb down Voir le message
    Bonjour,

    il est préférable d'utiliser double!
    Oh que oui.

    Surtout pour des calculs financiers. Et quand la précision des calculs financiers est très importante, il y a aussi le type Currency. Mais il faut y aller de manière indirecte:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    dim hector as variant
    hector = CCur(hector)
    Mais le type Currency demande 32 octets par variable… Ce n'est pas trop long que la mémoire utilisée augmente
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

  7. #7
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 904
    Points : 10 168
    Points
    10 168
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    Citation Envoyé par VBANoJutsu Voir le message
    Merci pour vos réponses, effectivement j'ai du mal à définir le type pour mes variables à chaque fois , je ne sais pas pourquoi.
    Ne te casse pas trop la tête:

    Du texte : String
    Des compteurs : Integer ou Long
    Des calculs : Double

    Dans disons 90 % des cas
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

  8. #8
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 904
    Points : 10 168
    Points
    10 168
    Billets dans le blog
    36
    Par défaut
    Bonjour,


    Citation Envoyé par gaet76 Voir le message
    Bonjour,


    Et il pourra définir s'il est mieux avec un single ou un double
    Disons que j'ai de gros doutes. Les fonctions VBA et Excel sont très souvent programmées avec les type Double et Integer par Microsoft.

    Utiliser Single, ou byte, ne fait que de provoquer des conversions implicites supplémentaires.

    Cela devient un combat entre précision et performance contre économie de mémoire.
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

Discussions similaires

  1. Réaliser un calcul avec variable
    Par remi2305 dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 12/03/2015, 10h16
  2. Formule de calcul avec variable ?
    Par clarisse dans le forum Excel
    Réponses: 5
    Dernier message: 19/09/2007, 14h27
  3. Réponses: 2
    Dernier message: 04/07/2006, 10h26
  4. [EasyPHP] impossible de faire des URLS avec variable
    Par SandraG dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 9
    Dernier message: 30/03/2006, 17h38
  5. réaliser des etats avec jbuilder
    Par 2j dans le forum JBuilder
    Réponses: 3
    Dernier message: 14/01/2006, 18h59

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