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

Conception Discussion :

les variables Integer Obsolètes ?


Sujet :

Conception

  1. #1
    Expert éminent
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Points : 6 699
    Points
    6 699
    Par défaut les variables Integer Obsolètes ?
    Bonjour,

    Faisant des recherches, à la pause, sur l’optimisation vba, je suis tombé sur :

    http://msdn.microsoft.com/en-us/libr...ice.10%29.aspx

    qui m’a mené à :

    http://msdn.microsoft.com/en-us/libr...ice.10%29.aspx

    .../... Be aware of how much memory each data type requires and what range of values it can store. Always use a smaller data type if possible, except in the case where using a smaller data type will force an implicit conversion. For example, because variables of type Integer are converted to variables of type Long, it makes sense to declare variables that will store integer values as type Long instead of as type Integer. .../...
    Et à :

    http://msdn.microsoft.com/en-us/libr...ice.10%29.aspx

    Qui dit clairement que les versions récentes il est inutile et même préjudiciable de déclarer des variables en Integer vu qu’elles sont de toutes façons converties en Long, et que du coup on y perd en performance ????

    Qu'en pensez-vous ?

    codialement,

    Didier

  2. #2
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 044
    Points
    16 044
    Par défaut
    Bonjour,

    Effectivement, cela fait déjà un certain temp que je pratique de cette manière, suite à la lecture de ce tutoriel, entre autre : Guide d'optimisation de vos applications Microsoft ACCESS, III-H. VBA.

    Du coup, les seules variables typées Integer que j'utilise sont celles déclarées automatiquement dans les procédures (...Cancel As Integer).

    Domi2

  3. #3
    Expert éminent
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Points : 6 699
    Points
    6 699
    Par défaut
    Vu,

    Effectivement, et il y d'autres item généraux vba intéressants , maintenant je sais comment y avoir Accès

    cordialement,

    Didier

  4. #4
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 644
    Points : 34 351
    Points
    34 351
    Par défaut
    Salut,
    tu me fais découvrir l'obsolécence potentielle des types de variables

    Le changement dans la programmation est difficile à ce niveau là (comme on peut le ressentir en passant de DAO à ADO notamment), mais si on peut l'appliquer sur une nouvelle application plutôt que d'avoir à modifier des codes existant.

    Et donc la fonction CInt() sera elle aussi remplacée à terme par CLng() ?

  5. #5
    Expert éminent
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Points : 6 699
    Points
    6 699
    Par défaut
    Bonjour,

    Oui, ça fait bizarre, surtout quand on s'est efforcé pendant longtemps d'appliquer "les bonnes pratiques"

    C'est comme on rencontre toujours à tout bout de champs dans les fils des notations du genre Range("A65536").End(xlUp) qui sont aussi obsolètes depuis 2 ans et au final plus dangereuses et devraient systématiquement être remplacées par des Cells(Rows.Count, colonne).End(xlUp).Row qui s'affranchissent du nombre de lignes de 2007... voir 2010 qui donne dans le gigantisme.

    On ne doit pas faire de "la résistance au changement", on a assez de mal avec les clients à ce niveau

    cordialement,

    Didier

  6. #6
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 124
    Points : 55 921
    Points
    55 921
    Billets dans le blog
    131
    Par défaut
    Salut...

    Dans la même idée de codes génériques qui deviendraient des "bonnes pratiques",
    le code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Cells(Rows.Count, colonne).End(xlUp).Row
    peut planter lorsque la feuille active n'est pas une worksheet...

    Si ce code est utilisé avec une feuile graphe active, => plantage

    Donc, lorsque l'on utilise ce code en dehors d'un module de feuille, on aurait intérêt à préfixer Rows d'un objet Worksheet valide...

Discussions similaires

  1. Effacer les variables de session
    Par glsn dans le forum ASP
    Réponses: 2
    Dernier message: 12/12/2003, 13h42
  2. question sur les variables globales et les thread posix
    Par souris_sonic dans le forum POSIX
    Réponses: 5
    Dernier message: 13/06/2003, 13h59
  3. [syntaxe] Gerer les variables dans une requete
    Par rastapopulos dans le forum MS SQL Server
    Réponses: 12
    Dernier message: 15/04/2003, 12h53
  4. [XSLT] les variables???
    Par Lydiane dans le forum XSL/XSLT/XPATH
    Réponses: 11
    Dernier message: 09/08/2002, 16h17
  5. les variables globales static
    Par gRRosminet dans le forum C
    Réponses: 8
    Dernier message: 27/04/2002, 08h34

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