Page 1 sur 1

[R] Aide sur la traduction d'une boucle

Posté : mer. 10 févr. 2010 12:03
par lerin57
Bonjour à tous.

Je travaille actuellement sur un projet de conception de mails préformaté dans outlook.

Dans le cadre de ce projet, Ayuckers (membre du forum), m'a véritablement mâché le travail en me fournissant un exemple (que je trouve génial):
► Afficher le texte
Je précise d'abord les points suivants :
testcommande.html est un exemple créé via kompozer, contenant les valeurs cibles @Nom@, @Prenom@, @Produit@ et @RefCommande@
Les memes valeurs sont renseignée dans un fichier *.ini.

Voici Mon probleme : j'ai bien assimilé les fonction de lecture et le principe de renseignement du fichier *.ini.
Toutefois, j'aurais besoin d'explication concernant la boucle suivante :
For $i = 1 To $Tags[0][0]
$MonModel = StringReplace($MonModel, $Tags[$i][0], $Tags[$i][1])
Next


En fait j'aimerais comprendre la signification de la syntaxe $Tags[0][0], $Tags[$i][0], et $Tags[$i][1].

Par cette requète, je précise que j'ai déja parcourue les tutos et l'aide de autoit, et que j'ai bien compris le principe de la boucle.
Je désire juste appréhender ce concept de manière un peu plus claire.

Re: [..] Aide sur la traduction d'une boucle

Posté : mer. 10 févr. 2010 15:12
par Tlem
$Tags[0][0] est un tableau à deux dimensions.
Ce qui est entre crochet représente 'les coordonnées' dans le tableau de la valeur que l'on souhaite atteindre.

Donc $Tags[0][0] signifie que l'on utilise la valeur qui ce trouve colonne 0 et ligne 0 et en l'occurrence, cette 'case' contient le nombre d'élément (de ligne) du tableau (Attention ceci n'est pas toujours vrai, cela dépend des cas ;)).

Donc dans le code que vous présentez, le principe de la boucle et de partir de la ligne 1 (For $i = 1) jusqu'à la dernière ligne du tableau ($Tags[0][0]).

Ensuite, avec la ligne $MonModel = StringReplace($MonModel, $Tags[$i][0], $Tags[$i][1]) on remplace dans la chaine $MonModel la chaine qui ce trouve dans la valeur $Tags[$i][0] (ligne $i colonne 0) par la chaine qui ce trouve dans la valeur $Tags[$i][1] (ligne $i colonne 1) et on met tout ce petit monde dans la variable $MonModel.

Voilà, j'espère que les choses sont un peut plus claire maintenant. ;)

Re: [R] Aide sur la traduction d'une boucle

Posté : ven. 12 févr. 2010 10:22
par lerin57
Merci pour cette explication, c'est effectivement beaucoup plus clair.

J'arrive au bout de mon projet.

J'ai un autre post que je vais pouvoir mettre en résolu.

Merci en core pour ton aide.

(ps : je n'avais pas pensé à l'explication du tableau, je vais la garder dans un coin pour les prochaines fois ... :wink: )