- ベストアンサー
★Excel関数★
★Excelの関数についての質問なんですけど、 「 ABCDEF GHIJKL」 この文字列がA1に入っているのですが、 B1に 「 GHIJKL」 だけを入れるようにしたいのですが、 どの関数を使えば良いのかわかりません。 ちなみに文字数も決まってはおらず、 ようは2段のうち下の段だけの文字をB1に表示できるようにしたいのです。 関数に詳しい方、ご回答お待ちしております。
- みんなの回答 (8)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
一ヶ所だけなら、コピペと削除でできるのですが、多分複数行あるのでしょね。 チョット面倒ですが、B列に他の方が回答されている方法などで2段目の内容を表示させます。 ただし、失礼ながら#1さんの方法だとうまくいきません。 =RIGHT(A1,FIND(CHAR(10),A1)) ではなく =RIGHT(A1,LEN(A1)-FIND(CHAR(10),A1)) としてください。 他の行もあるなら、この数式をB列の他の行にもコピーしておきます。 B列の全ての行で2段目が表示されている事を確認したら、 列番号が表示されている部分(この例では「B」と表示されている部分)をクリック。 これでB列全体が選択されrので、「編集」-「コピー」をクリック。 次にB列と同様にC列全体を選択。 次に「編集」-「形式を選択して貼り付け」の「値」に黒丸をつけてOKをクリック さらにA列全体を選択して、 「データ」-「区切り位置」をクリックして表示される「区切り位置指定ウイザード-1/3」で「カンマやタブ....」を選択し「次へ」をクリック。 「...ウイザード-2/3」で「区切り文字」の「その他」にチェックをつけ「完了」をクリック。 でいけます。 このあと、不要なB列(#VALUE!と表示されているハズ)を削除します。 こんな面倒な事をしなくても、「区切り位置指定ウイザード-2/3」で区切り文字にCHR(10)を直接入力できれば一発で分けられるのですが.... CSVファイルへ出力してテキストエディタで「,」などへ置き換えれば出来ますが、エクセル上でのコントロール・コードの入力方法をご存じの方がおられれば回答をお願いしたいです。
その他の回答 (7)
- ka_na_de
- ベストアンサー率56% (162/286)
こんにちは。 結局、質問内容は、 改行コードで区切られたデータを分解したいということですね。 以下を試してみてください。 1)A列を選択 2)「データ」→「区切り位置」 3)「カンマやタブなどの・・・」にチェックを入れて「次へ」 4)「その他」にチェックを入れて 右の欄をクリックし、「Ctrl」+「J」の同時押しして「次へ」 注)見た目には何も入力されませんが、プレビューでは きちんと区切られていると思います。 5)「完了」
お礼
参考にさせていただきました。 ありがとうございます!
#6です。 #6を実行するのなら、一応ファイルのバックアップをとってからにしてくださいね。
要は A1に入っている「ABCDEF<改行>GHIJKL」を A1に「ABCDEF」、B1に「GHIJKL」というように 振り分けたいというのが最終目的なんですか? それなら、最初からそのように質問してくれないと、 回答がねじ曲がってしまいます。
補足
本当に申し訳ございませんでした。 vizzarさんの言うとおりです! 昨日実践してみたら、その事に気づきました・・・ もう少し早く気づけばよかったのですが(>_<) ご回答してくださったみなさん本当にすみませんでした。
- maron--5
- ベストアンサー率36% (321/877)
◆こんな方法もありますよ =REPLACE(A1,1,FIND(CHAR(10),A1),)
お礼
回答してくださりありがとうございました!
- imogasi
- ベストアンサー率27% (4737/17070)
エクセルのシートで改行されて見えるのは 操作はALT+ENTERをしたわけだが (1)文字コード10の文字が見えないが入っている。 (2)書式ーセルー配置ー「折り返して全体を表示する」の設定 の2つがあいまって、そういう風に表示されます。 ですから、 文字コード10を探し見つかれば 次から最後までを もって来ればよい、前半はFIND関数、後半はRIGHT関数でできます。 文字コード10の文字はCHAR(10)です。 =RIGHT(A1,LEN(A1)-FIND(CHAR(10),A1)+1) だがChar(10)が無いときエラーを出すので、修正して =IF(ISERROR(FIND(CHAR(10),A3)),A3,RIGHT(A3,LEN(A3)-FIND(CHAR(10),A3)+1)) これでもA1が空白だと0になるが、長くなるので省略。 また改行は2段どまりの前提です。
補足
丁寧に回答していただいてありがとうございます。 「 ABCDEF GHIJKL」 B1に「GHIJKL」が入ったとき、 A1の「GHIJKL」を消す関数なんかありませんよね?
- mshr1962
- ベストアンサー率39% (7417/18945)
B1=MID(A1,FIND(CHAR(10),A1&CHAR(10))+1,LEN(A1))
お礼
回答してくださりありがとうございました!
- n-jun
- ベストアンサー率33% (959/2873)
B1 =RIGHT(A1,FIND(CHAR(10),A1)) では、どうでしょうか? ところで、2段とは”改行”ですよね?
お礼
回答してくださりありがとうございました!
お礼
とても参考になりました! ありがとうございます!