let
Source = Excel.CurrentWorkbook(){[Name="Tableau1"]}[Content],
#"Majuscule à chaque mot" = Table.TransformColumns(Source,{{"pays", Text.Proper, type text}}),
#"Lignes groupées" = Table.Group(#"Majuscule à chaque mot", {"pays"}, {{"Villes", each Text.Combine([ville], " - ")}})
in
#"Lignes groupées"
=SIERREUR(INDEX(A:A;PETITE.VALEUR(SIERREUR(SI(EQUIV(A$2:A$99;A$2:A$99;0)=LIGNE(A$2:A$99)-1;LIGNE(A$2:A$99));"");LIGNES($1:1)));"")
=SI(E2="";"";JOINDRE.TEXTE(" -";VRAI;SI(A$2:A$99=E2;B$2:B$99;"")))