• ベストアンサー

【Excel】CONCATENATEの反対は?

・・・反対、というわけでもないんですけど(ぇ)。 つまり、1つのセルに入っているものを、記号で区切る、なんてことは可能でしょうか。 AAAA\BBBB\CCCCと入っているものを、「AAAA」と「BBBB」と「CCCC」に、それぞれセルを分ける、ということです。

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

  • ベストアンサー
  • okormazd
  • ベストアンサー率50% (1224/2412)
回答No.4

vbaでユーザー定義関数を作る。 たとえば、下記のようなもの。 Function bunri(donocell, banme) bunri = Split(donocell, "\")(banme - 1) End Function 分離するセルと、何番目のデータか指定すればそのデータが入る。 配列数式で、複数のデータも返せるようにもできると思うが。

Meuniere
質問者

お礼

これぞ!!!! 初めてユーザ関数に触れました(^^; ありがとうござんした!!!

すると、全ての回答が全文表示されます。

その他の回答 (6)

  • michi_001
  • ベストアンサー率32% (21/65)
回答No.7

#3のものです。 >区切った項目が自動的に入る の意味がいまいちなんですが… AAAA \BBBB \CCCC あるいは AAAA\ BBBB\ CCCC のようにしたい、ということですか? 桁数が固定で決まっているなら出来ます。 先ほどの -------------------------------------------- AAAA\BBBB\CCCC と入っているセル(範囲)を選択後、 「データ」⇒「区切り位置」で、「カンマやタブなどの…」を「スペースによって右または左に…」にチェック⇒「次へ」⇒任意の場所にてマウスをクリックして区切る位置を指定⇒「次へ」でそれぞれの書式を設定して「完了」 -------------------------------------------- という手順になると思います。 それ以外で、桁数はデータによって違うんだよ、という場合はこの方法は使えません。

Meuniere
質問者

お礼

つまりは何か関数の入ったセルが用意されていて、指定セル(デフォルトではブランク)に任意の区切り記号で区切った文字列が入れば、その区切った結果が表示されるようにしたい、とこういうわけでした。 桁数は文字列によって変わりますが、なるほど、関数でなくとも、こういうやり方もありますね。 再度のご回答、ありがとうございました^^

すると、全ての回答が全文表示されます。
  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.6

>指定のセルにそれぞれ区切った項目が自動的に入る、なんてことはできないでしょうか。 「指定の」とはどんな風に指定するのですか。 セル1つおきとか、コンピュタプログラムで表現できるルール性があれば、VBAで出来ます。 エクセル関数では(ユーザー関数を含め)式を入れた(セルの値)1箇所しか、決定できません。エクセル関数のキホン常識。 関数でやろうというなら、エクセルのキホンを認識してない、思いつきの質問です。 操作なら「データ」「区切り位置」で自身セル+隣接セルにセットされます。 隣接セルならユーザー関数で、複数セルに、配列的に値を返せると思いますが普通のVBA解説書には書いてないレベルです。

Meuniere
質問者

お礼

なかなか言葉で説明するのが難しく(^^; 任意のセルに、区切ったひとつの値を返せれば良かったので、No.4のご回答にある関数、これはユーザ関数でしたがあまり馴染みがないので、既存の関数でそういったものがあれば、ということでした。 ご指摘ありがとうございました。

すると、全ての回答が全文表示されます。
回答No.5

A1セルに対象のデータがあるものとして、 B1=LEFT(A1,FIND("\",A1,1)-1) C1=FIND("\",$A1,1) D1=MID($A1,C1+1,E1-C1-1) E1=FIND("\",$A1&"\",C1+1) その後、D1とE1をコピーして右へコピーすると一列おきにデータがでます。

Meuniere
質問者

お礼

こういうやり方もアリなんですね。 今回は任意のセルに区切った結果を返したかったのでちょっと違いましたが、参考になりました。機会があれば覚えておきます。ありがとうございました。

すると、全ての回答が全文表示されます。
  • michi_001
  • ベストアンサー率32% (21/65)
回答No.3

「データ」⇒「区切り位置」で出来ると思います。 AAAA\BBBB\CCCC と入っているセル(範囲)を選択後、 「データ」⇒「区切り位置」で、「カンマやタブなどの…」にチェック⇒「次へ」⇒「区切り文字」を「その他」にチェックして、「\」を入力⇒「次へ」でそれぞれの書式を設定して「完了」で出来ませんか?

Meuniere
質問者

補足

確かにそれでできるんですが、ある位置に貼り付けたら、指定のセルにそれぞれ区切った項目が自動的に入る、なんてことはできないでしょうか。 言葉足らずがありましたね。申し訳ありません。

すると、全ての回答が全文表示されます。
noname#85032
noname#85032
回答No.2

データ区切り(区切り位置)で区切り記号を¥にすれば出来るでしょう。

すると、全ての回答が全文表示されます。
  • ASIMOV
  • ベストアンサー率41% (982/2351)
回答No.1

関数じゃありませんが、「データ」「区切り位置」で分割できます

すると、全ての回答が全文表示されます。

関連するQ&A