こんばんは!
VBAになりますが、一例です。
元データはSheet1にあり、お示しの画像通り2行目が項目行で3行目からデータがあるとします。
Sheet2に表示するようにしてみました。
Alt+F11キー → メニュー → 挿入 → 標準モジュール → VBE画面のカーソルが点滅しているところに
↓のコードをコピー&ペースト → Excel画面に戻りマクロを実行してみてください。
(Alt+F8キー → マクロ → マクロ実行です)
Sub Sample1() 'この行から
Dim i As Long, j As Long, k As Long, L As Long, M As Long, N As Long
Dim lastRow As Long, cnt As Long, myCol As Long, c As Range, wS As Worksheet
Set wS = Worksheets("Sheet1")
With Worksheets("Sheet2")
.Cells.ClearContents
lastRow = wS.Cells(Rows.Count, "A").End(xlUp).Row
'6組の組み合わせの場合
For i = 3 To lastRow - 5
For j = i + 1 To lastRow - 4
For k = j + 1 To lastRow - 3
For L = k + 1 To lastRow - 2
For M = L + 1 To lastRow - 1
For N = M + 1 To lastRow
cnt = cnt + 1
With .Cells(cnt, "A")
.Value = wS.Cells(i, "A")
.Offset(, 1) = wS.Cells(j, "A")
.Offset(, 2) = wS.Cells(k, "A")
.Offset(, 3) = wS.Cells(L, "A")
.Offset(, 4) = wS.Cells(M, "A")
.Offset(, 5) = wS.Cells(N, "A")
End With
Next N
Next M
Next L
Next k
Next j
Next i
For i = 1 To .Cells(Rows.Count, "A").End(xlUp).Row
For j = 1 To 6
Set c = wS.Range("A:A").Find(what:=.Cells(i, j), LookIn:=xlValues, lookat:=xlWhole)
.Cells(i, "G") = .Cells(i, "G") + WorksheetFunction.Sum(Range(wS.Cells(c.Row, "B"), wS.Cells(c.Row, "G")))
Next j
Next i
End With
MsgBox "処理完了" 'この行まで
End Sub
※ A列データは何人でも対応できるようにしています。
上記コードはその中の6人を重複がないように組み合わせて表示しています。
>各言語の合計点の組み合わせを全通り出したいのですが
の部分で少々引っかかりますが、
とりあえず6人の合計をG列に表示するようにしています。m(_ _)m
補足
>shintaro-2様 本気です 数式をご存知なのですか?