• ベストアンサー

エクセル関数について

教えてください! エクセルでA1セルから順にA2、A3・・・と英文が入力されています。 文章の区切りがバラバラで、一つのセルに一文が収まっている場合も あれば、二つ三つのセルにまたがって文章が完結する場合もあります。 それらを、一つのセルに一文、としたいと思っています。 その後、和訳と対比させるのが完成形です。 A1セルに英文、B1セルのその和訳、といった感じです。 更にその後の作業もあって、どうしてもエクセルでの処理が必要です。 どなたか教えてくださいぃぃ! データ量があって一文ずつ作業するには限界がぁぁぁ! 宜しくお願い致します。

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

  • ベストアンサー
noname#99913
noname#99913
回答No.3

(1)テキスト形式で保存 (2)保存したものを開き、全選択、コピー (3)エクセルに貼り付け  開業を取り除きたい場合、 (1)テキスト形式で保存 (2)保存しいたものをワードで読み込む。 (3)改行を置換機能を使って削除 (4)全選択、コピー (5)エクセルに貼り付け

99mama
質問者

お礼

ありがとうございます。 ワードを利用する考えがなかったので目から鱗でした。 一旦、置換で改行を削除して 今度はピリオドで改行させる といった作業で出来そうな感じが・・・。 初めての試みなので自信がありませんけど。 がんばってみます!!!

その他の回答 (2)

  • hotosys
  • ベストアンサー率67% (97/143)
回答No.2

文章の区切りを.(ピリオド)とする場合です。 B1=A1 B2=IF(ISERROR(SEARCH(".",A1)),B1&A2,A2) B2を下へコピー。 C1=IF(ISERROR(SEARCH(".",B1)),"",B1) C1を下へコピー。 これでC列に1文づつになると思います。 必要なら D1=IF(C1="","",ROW()-COUNTIF(C$1:C1,"")) E1=IF(ISERROR(MATCH(ROW(),D:D,0)),"",INDEX(C:C,MATCH(ROW(),D:D,0),1)) D1:E1を下へコピー。 これでE列に空白無しの1文づつになると思います。

99mama
質問者

お礼

ありがとうございます。 説明が悪かったと反省しています。 データはA列にしか入っておらず A1から始まってA2の途中でピリオドにて 文章が終了し、同じA2セル内で次の文章が 始まってA3~A5まで文章が入力されていて A5の途中でピリオドにて文章が終了し、 同じA5セル内で次の文章が始まる。。。 といった状況なのです。 何か方法はありますか? ☆頂戴したご回答の中で、初めて使う関数が 入っていてとっても参考になりました☆

  • soixante
  • ベストアンサー率32% (401/1245)
回答No.1

入力されている英文の中で、もっとも長いもの(もっとも右のセルまでに入力されているもの)をまず探してみて、 仮にそれが、E列だとしたら、 F1に =CONCATENATE(A1,B1,C1,D1,E1) と入れて、一番下まで引っ張る のはどうでしょう。 でそのあと、F列を式から数値に変えて、A~E列を削除。 そのあと対応する和訳をその右の列に入れてみる。

99mama
質問者

お礼

ありがとうございます。 今回、初めての質問でした。 回答が返ってきたことに大感激!です。 ところで、この関数だと文章をつなげるという 作業になるのですよね? 一つの文章が同じ個数のセルに収まっている わけではないので、この方法だと難しそうです。 またご教授ください。

関連するQ&A