質問: 文字列の組み合わせをエクセルで書き出したい。 エクセル初心者です。 文字列の組み合わせのパターンを全部書き出したいのですが、エクセルでそのようなことは可能でしょうか? a,b,c,d,e,f,gの7文字から4文字を抽出し、文字列を作りたいです。 ex)abcd、gedcなど。 4文字は必ず異なるアルファベットです ex)aabf、adcdなどはダメ。 順序が異なれば同じ組み合わせでもかまいません。 ex)abcd、dcba ←大丈夫。 また、もしエクセルでできなかったら手書きで書き出そうと思うのですが、簡単な方法をご存知でしたらそちらもお願いいたします。
回答: #4です。 間違いがあったので訂正しておきます。 (#3でも同じ結果がでます。) '==========標準モジュールに記述=========================== option explicit sub test() dim i1 as long dim i2 as long dim i3 as long dim i4 as long dim i as long dim r as long dim k as long dim myarray as variant myarray = array(, "a", "b", "c", "d", "e", "f", "g") application.screenupdating = false cells.clear i = 1 for i1 = 1 to 7 for i2 = 1 to 7 for i3 = 1 to 7 for i4 = 1 to 7 cells(i, "a").value = myarray(i1) cells(i, "b").value = myarray(i2) cells(i, "c").value = myarray(i3) cells(i, "d").value = myarray(i4) i = i + 1 next i4 next i3 next i2 next i1 for k = i to 1 step -1 for r = 1 to 7 if application.worksheetfunction. _ countif(range(cells(k, "a"), cells(k, "d")), myarray(r)) >= 2 then rows(k).delete end if next r cells(k, "e").value = cells(k, "a").value & _ cells(k, "b").value & _ cells(k, "c").value & _ cells(k, "d").value next k application.screenupdating = true end sub