質問: exelで困っています。どなたか助けてください! お世話になります。早速ですが・・・ 下記のような表があります。 ┌──────┬─-─┬─-─┬─-─┬─-─┬─-─┬─-─┬─-─┐ │分類項目・・・・│aaa │bbb │ccc │ddd │eee │fff │ggg │ ├──────┼─-─┴─-─┴─-─┴─-─┴─-─┴─-─┴─-─┤ │「、」区切り・・・│aaa、bbb、ccc、ddd、eee、fff、ggg │ ├──────┼──────────────────────-─┤ │「 」区切り・・・│aaa bbb ccc ddd eee fff ggg │ ├──────┼──────────────────────-─┤ │「,」区切り・・・・│aaa,bbb,ccc,ddd,eee,fff,ggg │ └──────┴──────────────────────-─┘ ■不特定の分類項目(何が記入されるかわかりません)のaaなどの 項目を上図、および、下記のように自動的に変換というか、並べ られるようにしたいと思っています。 (1)「、」区切り(全角句点区切り) (2)「 」区切り(全角スペース区切り) (3)「,」半角句点区切り ■【質問1】vbaマクロを使わず関数などの処理にてできない ものでしょうか? また、 【質問2】(1)上図で「、」で区切ったもの (2)同様に「 」で区切ったもの (3)同様に「,」 で区切ったもの 例えとして⇒○「aaa、bbb 」 ⇒×「aaa、bbb、、、、、、、」 このようにしたいのですが? 【質問3】いずれの場合も、その新しくできた文字列を他の ソフトウェアにコピペしようとすると、関数の数式が コピペされてしまします。 もちろんセルをワンクリックで選択すると、値だけが コピペできます。 この点を初心者でも失敗(数式のコピペではなく)する ことなく、値だけをコピペすることが可能でしょうか? どうかよろしくお願いいたします。 <( _ _ )>
回答: ご質問の意味がよくわかっていませんがa1セルからg1セルに入力されている文字列について「、」「 」「, 」などの区切りをつけてそれぞれを一つのセルに表示したいのでしたら次のようにします。 a2セルには次の式を入力します。 =if(a$1="","",a$1)&if(b$1="","","、"&b$1)&if(c$1="","","、"&c$1)&if(d$1="","","、"&d$1)&if(e$1="","","、"&e$1)&if(f$1="","","、"&f$1)&if(g$1="","","、"&g$1) a3セルには次の式を入力します。 =if(a$1="","",a$1)&if(b$1="",""," "&b$1)&if(c$1="",""," "&c$1)&if(d$1="",""," "&d$1)&if(e$1="",""," "&e$1)&if(f$1="",""," "&f$1)&if(g$1="",""," "&g$1) a4セルには次の式を入力します。 =if(a$1="","",a$1)&if(b$1="","",","&b$1)&if(c$1="","",","&c$1)&if(d$1="","",","&d$1)&if(e$1="","",","&e$1)&if(f$1="","",","&f$1)&if(g$1="","",","&g$1) これらの式ではa1セルからg1セルの間で文字が入っているセルの文字だけが並べられて表示されます。