Vitesse d'exécution [Résolu]

Signaler
Messages postés
228
Date d'inscription
mercredi 13 décembre 2000
Statut
Membre
Dernière intervention
8 août 2011
-
Messages postés
228
Date d'inscription
mercredi 13 décembre 2000
Statut
Membre
Dernière intervention
8 août 2011
-
Bonjour à vous!

J'aimerais avoir votre avis par rapport à la vitesse d'exécution de :
----------------------------------------------------------------------------
dim x as string

x =Trim$(LEFT$( uncombo.list(uncombo.listindex),3))

truc1 = x
truc2 = x
truc3 = x
----------------------------------------------------------------------------
OU
----------------------------------------------------------------------------
truc1 = Trim$(LEFT$( uncombo.list(uncombo.listindex),3))
truc2 = Trim$(LEFT$( uncombo.list(uncombo.listindex),3))
truc3 = Trim$(LEFT$( uncombo.list(uncombo.listindex),3))
----------------------------------------------------------------------------

Pcq j'ai cette situation qui arrive peut-être 90-100 fois quand l'usager click sur un boutton. Et il peut clicker souvent sur le dit boutton

Alors j'aimerais savoir quelle est, selon vous, la méthode la plus rapide.

Si vous voulez proposer une autre méthode, ne vous gênez pas!

Merci beacoup

5 réponses

Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
Salut,

perso je penche pour la première.
Je pense qu'il est plus rapide d'accéder x fois à une variable qu'à un index d'un objet x fois.
Mais je suis pas spécialiste du dev et don de l'optimisation, bref, je peux me tromper

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
Messages postés
1263
Date d'inscription
mardi 11 novembre 2003
Statut
Membre
Dernière intervention
24 juillet 2013
6
Salut

Je pense aussi pour la première

Dans le premier cas on calcule la variable x une fois et on l'affecte aux trois autres variables
Dans le second cas on calcule trois fois la même variable au niveau du calcul

Le plus rapide serait

truc1 =Trim$(LEFT$( uncombo.list(uncombo.listindex),3))
truc2 = truc1
truc3 = truc1

on calcule une fois la variable truc1 et on affecte 2 fois sa valeur ensuite

Cependant on chipote un peu à mon avis vu la vitesse actuelle de nos chers microprocesseurs
Par contre en longueur de code on y gagne

GRENIER Alain
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
68
je dirai même :

truc1 = Trim$(Left$(uncombo.Text,3))
truc2 = truc1
truc3 = truc1

ou même, selon tes données (a toi de trancher)

truc1 = RTrim$(Left$( uncombo.Text,3))
truc2 = truc1
truc3 = truc1
Messages postés
228
Date d'inscription
mercredi 13 décembre 2000
Statut
Membre
Dernière intervention
8 août 2011

Merci à vous trois pour vos commentaires!

Mais Renfield, si je comprends bien, la propriété .text du combobox renvoie à
combo.list(combo.listindex) !!!

Ça fait plusieurs années que j'utilisais .list(.listindex) et je détestait cette méthode!!
Car si le nom du combobox est long ça prend toujours bcp d'espace dans le code...

En tout cas, merci beaucoup!
Messages postés
228
Date d'inscription
mercredi 13 décembre 2000
Statut
Membre
Dernière intervention
8 août 2011

Finalement, je vais y aller avec :

X = RTrim$(Left$( uncombo.Text,3))

truc1,2,3 = X    Parce que il peut arriver que mon truc2 change mon truc1

Mais je n'entrerai pas dans les détails! ;)