Vitesse d'exécution

Résolu
bonjourcheval Messages postés 228 Date d'inscription mercredi 13 décembre 2000 Statut Membre Dernière intervention 8 août 2011 - 10 juil. 2008 à 19:05
bonjourcheval Messages postés 228 Date d'inscription mercredi 13 décembre 2000 Statut Membre Dernière intervention 8 août 2011 - 11 juil. 2008 à 14:15
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

mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
10 juil. 2008 à 19:08
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
3
Profil bloqué
10 juil. 2008 à 21:21
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
3
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
11 juil. 2008 à 08:49
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
3
bonjourcheval Messages postés 228 Date d'inscription mercredi 13 décembre 2000 Statut Membre Dernière intervention 8 août 2011
11 juil. 2008 à 14:13
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!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
bonjourcheval Messages postés 228 Date d'inscription mercredi 13 décembre 2000 Statut Membre Dernière intervention 8 août 2011
11 juil. 2008 à 14:15
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! ;)
0
Rejoignez-nous