• ベストアンサー

エクセルで順番通りの結合(記号の場合)

No.8627411と同系統の質問ですが、数値ではなく記号の場合、A~C列の記号をD列に「△□○」の順に結合する方法をご教示願います。

質問者が選んだベストアンサー

  • ベストアンサー
  • watabe007
  • ベストアンサー率62% (476/760)
回答No.3

参考に =REPT("△",COUNTIF(A1:C1,"△"))&REPT("□",COUNTIF(A1:C1,"□"))&REPT("○",COUNTIF(A1:C1,"○"))

その他の回答 (4)

回答No.6

No.3 さんのご回答を 5 文字に拡張した数式をお勧めします。ベストアンサーは辞退します。 つまり、次式。 D1 =rept("△",countif(a1:c1,"△"))&rept("▲",countif(a1:c1,"▲"))&rept("□",countif(a1:c1,"□"))&rept("■",countif(a1:c1,"■"))&rept("○",countif(a1:c1,"○"))

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.5

こんばんは! VBAでの一例です。 ↓の画像のようにF列に優先順位順にデータを上から並べておきます。 画面左下の操作したいSheet見出し上で右クリック → コードの表示 → VBE画面のカーソルが点滅しているところに ↓のコードをコピー&ペースト → Excel画面に戻りマクロを実行してみてください。 (Alt+F8キー → マクロ → マクロ実行です) Sub Sample1() 'この行から Dim i As Long, j As Long, k As Long, str As String For i = 1 To Cells(Rows.Count, "A").End(xlUp).Row For k = 1 To Cells(Rows.Count, "F").End(xlUp).Row For j = 1 To 3 If Cells(i, j) = Cells(k, "F") Then str = str & Cells(k, "F") End If Next j Next k Cells(i, "D") = str str = "" Next i End Sub 'この行まで これで画像のような感じになります。m(_ _)m

noname#204879
noname#204879
回答No.4

[No.2補足]へのコメント、 》 これの応用として、… 最初からそれを提示すべきでした。 (情報のアトダシは止めませうネ) 添付図参照 F1: {=CHOOSE(SMALL(FIND($A1:$C1,"△▲□■○"),COLUMN(A1)),"△","▲","□","■","○")} (これは配列数式です) D1: =F1&G1&H1

noname#203218
noname#203218
回答No.2

3つのセルに指定文字が各1つづつあるかを判定し、各文字が3つ存在する場合は指定の文字を表示、そうでなければ空白表示とする。(○、○、△の場合は空白表示という事です) 上記条件でよければ下記式で表示可能です。 D1式 =IF(IF(COUNTIF(A1:C1,"△")>0,1,0)+IF(COUNTIF(A1:C1,"□")>0,1,0)+IF(COUNTIF(A1:C1,"○")>0,1,0)=3,"△□○","")

KIKAIDER01
質問者

補足

ご教示ありがとうございます。これの応用として、 □ △ ○ △□○ ▲ ○ △ △▲○ ○ ▲ □ ▲□○ というように、△▲□■○の順に結合させることはできるでしょうか?

関連するQ&A