Permutation/Combinaison de trois mots

NicolasM

XLDnaute Nouveau
Bonjour,

J'ai un fichier avec dans une même colonne (A) trois mots par cellule, par exemple "jai trois mots".

J'aimerais pouvoir afficher dans une nouvelle colonne (B) voire dans la même colonne (A) les 6 combinaisons possibles de ces trois mots : "mots trois jai", "trois mots jai", "jai trois mots", "trois jai mots" etc...

Ma liste ne comprend jamais les mêmes trois mots, le séparateur entre les mots est un espace.

Je n'ai aucune connaissance en VBA, pourriez-vous svp m'aider :) ?

Merci pour votre temps et votre aide,

Nicolas
 

tototiti2008

XLDnaute Barbatruc
Re : Permutation/Combinaison de trois mots

Bonjour NicolasM,

Bienvenue sur XLD,

peut-être

à coller dans un module

Code:
Function CombinTroisMots(Texte As String) As String
Dim ListeMots, i As Long, j As Long
    CombinTroisMots = ""
    ListeMots = Split(Texte)
    For i = 0 To 2
        For j = 0 To 2
            If i <> j Then
                CombinTroisMots = CombinTroisMots & ListeMots(i) & " " & ListeMots(j) & " " & ListeMots((i + j) * 2 Mod 3) & Chr(10)
            End If
        Next j
    Next i
    CombinTroisMots = Left(CombinTroisMots, Len(CombinTroisMots) - 1)
End Function

et à appeler dans la feuille de calcul

Code:
=combintroismots(A1)
 

Discussions similaires

Statistiques des forums

Discussions
312 489
Messages
2 088 851
Membres
103 974
dernier inscrit
chmikha