Bonjour tout le monde,
Afin de répondre partiellement aux questions posées :
Voici quelques explications si l'on compare la macro de Yal et la mienne :
Je charge mon tableau en une seule ligne
Tableau_spécial_Split = Split(Range("A2"), Chr(10), -1)
Alors que Yal le fait sur deux lignes
s = Cells(2, 1).Value
tbS = Split(s, vbLf)
Selon moi il serait possible de remplacer les deux lignes ci-dessus par :
tbS = Split(Cells(2, 1).Value , vbLf)
Lui utilise le séparateur vbLf alors que j'utilise Chr(10). Se sont deux systèmes possibles et aux résultats identiques, à utiliser selon ses préférences et ses habitudes. Même remarque - dans cette utilisation-ci -pour Range() ou Cells().
Yal utiliser une méthode bien plus rapide afin de reporter les données sur la feuille :
tbS = Application.Transpose(tbS)
Range("C2").Resize(UBound(tbS)) = tbS
alors que je passe par une boucle For/Next fastidieuse. Mais c'est la dernière fois que je l'ai fait, puisque j'ai appris aujourd'hui une méthode plus simple : merci Yal
Selon moi l'effacement des anciennes données est utile car si la deuxième série contient moins de données que la première, certaines données non souhaitées vont rester en place !