Bonjour,
Tu as une variable unique temp1, que tu as déclarée comme étant un nombre entier mais que tu souhaite remplir avec 3 chaines de caractères. Tu la déclares "temp1" mais tu travailles avec du temp2 ou temp3 (écrit sous forme de chaine de caractères au passage). Bref, ça ne peut pas marcher.
Utilise donc une variable tableau :
Dim temp(3) As String
Ensuite pour parcourir les cellules, inutile de les sélectionner, travaille plutôt avec un index ligne dans une boucle For.