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 :

imbrication et execution..


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 39
    Par défaut imbrication et execution..
    Bonjour à vous.
    Une question retour d'expérience:

    Concernant la rapidité d'exécution, vaut-il mieux séparer les instructions ou les imbriquées?

    je m'explique:

    j'ai ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dim text as string 'contenant ex: lundi 12
    je souhaite récupérer le numéro de jour en entier, j'ai donc les deux solution suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    dim pos as integer
    dim tx as string
    dim value as integer
     
    pos = InStr(TXT, " ")
    tx = Mid(TXT, pos+1)
    value = Val(tx)
    ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Dim value as integer
     
    value = Val(Mid(TXT, InStr(TXT, " ")+1))
    C'est un exemple simple, mais important si l'on fait plusieurs centaine de boucles.

    Merci de vos réponses.
    Iko

  2. #2
    Membre Expert Avatar de laetitia
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    1 281
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 281
    Par défaut
    bonjour ikoria le forum le mieux tu testes & tu regardes ce qui va le plus vite tu mets un timer

    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
    Option Explicit
    Sub es()
    ti As Long
    With Application 'code pour optimiser la vitesse d'excution
    .Calculation = xlCalculationManual
     .ScreenUpdating = False
     .DisplayAlerts = False
    ti = Timer
    'ta boucle
    .Calculation = xlCalculationAutomatic
     .ScreenUpdating = True
     .DisplayAlerts = True
    End With
    MsgBox Timer - ti
    End Sub
    ou rechercher un fonction plus rapide
    ou la facon de l'ecrire une boucle optimise peut étre jusqu' a 20 fois plus rapide qu'une boucle basique exemple passer par des "tablos"

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 39
    Par défaut
    merci pour cette réponse Laetitia.

    Code tres utile ^^

    iko.

  4. #4
    Membre Expert Avatar de aalex_38
    Inscrit en
    Septembre 2007
    Messages
    1 631
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 631
    Par défaut
    Si tu travailles sur une zone de texte il parait que Mid$ est plus rapide que Mid

    La liste disponible :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Chr$, ChrB$, CurDir$, Date$, Dir$, Error$, Format$, Hex$, Input$, InputB$, LCase$, Left$, LeftB$, LTrim$, Mid$, MidB$, Oct$, Right$, RightB$, RTrim$, Space$, Str$, String$, Time$, Trim$, UCase$.

    edit : la déclaration des variable est importante :

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 39
    Par défaut
    Merci pour cette instruction (option explicite)
    Provenant du C, je trouvais pas trop normal que je puisse utiliser des variables sans les déclarer...

Discussions similaires

  1. executer une application a distance : Sockets ? RPC ? CORBA?
    Par a_hic dans le forum Développement
    Réponses: 5
    Dernier message: 30/05/2006, 13h02
  2. [Kylix] Probleme d'execution de programmes...
    Par yopziggy dans le forum EDI
    Réponses: 19
    Dernier message: 03/05/2002, 14h50
  3. [Kylix] Demarrer en cliquant sur l'executable ???
    Par Anonymous dans le forum EDI
    Réponses: 2
    Dernier message: 26/04/2002, 11h24
  4. [Kylix] Execution d'une application hors de l'edi
    Par Sadam Sivaller dans le forum EDI
    Réponses: 1
    Dernier message: 20/04/2002, 23h22
  5. Réponses: 2
    Dernier message: 17/03/2002, 19h00

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