Bien que la solution SQLite semble la plus simple à mettre en œuvre

, pour faire ce que vous cherchez avec un tableau, il y à plusieurs approches possibles.
Je vais aborder celle qui me semble la plus 'simple' à mettre en œuvre.
La première étape va consister à construire votre tableau 2D avec le fichier CVS. Pour cela, deux solutions principales :
1 - Lire le fichier ligne après ligne tout en construisant le tableau.
2 - Lire le fichier directement dans un tableau.
Bien que la solution 1 soit plus directe, il faut quoi qu'il en soit connaitre le nombre de ligne du fichier afin de créer les dimensions du tableau 2D (avec
_FileCountLines par exemple) puis de lire de nouveau le fichier ligne par ligne afin de remplir le tableau (ce qui fait que le fichier est lu 2 fois

).
Je vais donc aborder la deuxième solution qui présente elle aussi un inconvénient, mais moindre, c'est de passer par un tableau intermédiaire, mais celui-ci permettra de connaitre le nombre d'élément (lignes) plus rapidement et surtout de continuer le travail en mémoire sans avoir besoin de re-lire le fichier.
Pour cela vous devrez utiliser la fonction
_FileReadToArray.
Celle-ci va placer chaque ligne de votre fichier dans une ligne du tableau.
A ce stade nous n'avons encore qu'un tableau 1D.
Bien, puis que vous connaissez le principe de la boucle For/Next, vous devrez ensuite lire ce tableau ligne par ligne afin de construire votre tableau final en 2D.
L'élément 0 de votre tableau 1D vous donne le nombre d'élément total de celui-ci, donc utilisez cette information pour créer les dimensions de votre futur tableau 2D et pour lire votre tableau 1D de l'élément 1 au dernier élément.
Chaque élément du tableau aura pour donnée une ligne entière de votre fichier CSV, donc en utilisant la commande
StringSplit sur cette ligne (avec la virgule pour séparateur), vous allez vous retrouver avec un mini tableau de quatre éléments.
L'élément 0 contiendra le nombre total d'éléments du tableau (sans l'élément 0

) soit 3, tandis que les éléments 1, 2 et 3 contiendront vos trois valeurs à utiliser.
De suite après cette commande
StringSplit, il vous suffit d'attribuer les trois valeurs de votre mini tableau à votre tableau 2D jusqu'à la fin de la lecture du tableau 1D.
J'espère que vous avez suivit jusque là.
Si oui, alors ce qui vient de vous prendre quelques minutes à comprendre, se fera en l'espace d'une fraction de seconde pour AutoIt.
Vous vous retrouvez donc avec un tableau 2D de trois colonnes contenant vos données comme dans votre tableur.

A partir de là, vous pouvez faire ce que vous voulez. Entre autre, puisque vous le demandez, il vous suffira de lire ce tableau dans une boucle For/Next sur la colonne 1 pour peupler votre ComboBox.
Pour connaitre le résultat du choix de la ComboBox, utilisez par exemple la fonction
_GUICtrlComboBox_GetCurSel qui vous retournera l'index de la sélection. Cet index vous permettra de connaitre la ligne du tableau concerné et donc de lire les valeurs des 'cellules' pour les attribuées à vos contrôles.
Voilà. J'espère que cela vous paraitra clair et vous aidera dans l'élaboration de votre code.