アプリ版:「スタンプのみでお礼する」機能のリリースについて

前回と同様にエクセルで英文を処理する作業なのですが・・・。
1つのセルに英文が10文章程度入力されていて
ピリオド毎に改行したいと思っています。
現在は、全く改行されておらず
「AAA.BBB.CCC.・・・」となっている状態から
「AAA.
 BBB.
 CCC.
 ・・・」と一つのセル内で改行した文章にしたいのです。
できれば、更に、
A1セルに10文章入力されているとして
それらをピリオド毎に改行し、
その改行された一文ずつがB1、B2、B3・・・B10と
別々のセルへ自動的に移動する
といったことが出来ると便利なのですが。
何か策はありますでしょうか?

A 回答 (9件)

> 目次やタイトルがあって「1.○○........P1」となって


> いるものや「1.1.2△△」と小タイトルがついているも
> のが混在しています。

他の回答者さん達みんな、そうとは知らずに一括でピリオドを置換
する方法を模索してますよ。置換したいのとしたくないのがあるん
だったら、ちゃんとそう言わなきゃ。希望は、「目次その他のピリ
オドは無視して、文章だけ一文ごとに改行したい」でいいですか。

私なら、「数字じゃない文字+ピリオドが直前にあるスペース」を改
行に置換します。ワードじゃ無理だと思うけど、検索や置換に正規
表現の使えるエディタがあれば一瞬です。私が使ってるエディタだ
と、検索文字列が「(\D\.)(\s)」で置換文字列が「\1\r」で

#330. FLYGON Height: 6'07", Weight: 180.8 lbs
1. Sapphire: FLYGON whips up a sandstorm by flapping its wings. The wings create a series of notes that sound like singing. Because the "singing" is the only thing that can be heard in a sandstorm, this POK?MON is said to be the desert spirit. 2. Fire Red: It hides itself by kicking up desert sand with its wings. Red covers shield its eyes from sand.



#330. FLYGON Height: 6'07", Weight: 180.8 lbs
1. Sapphire: FLYGON whips up a sandstorm by flapping its wings.
The wings create a series of notes that sound like singing.
Because the "singing" is the only thing that can be heard in a sandstorm, this POK?MON is said to be the desert spirit.
2. Fire Red: It hides itself by kicking up desert sand with its wings.
Red covers shield its eyes from sand.

になります。正規表現にもバリエーションがあるので確認が必要だ
けど、ちょっと気の利いたエディタなら大抵使えますよ。

この回答への補足

ありがとうございます。
一読しただけでは難しくて(???)なので、じっくり検証させていただきます。また質問させていただくかもしれません。
改めて質問文章の作り方、説明の仕方の難しさを感じました。言葉不足で申し訳ありません。この場をお借りして、ご回答くださった皆様にもお詫び申し上げますと共に今後ともお知恵をお貸しくださいますようお願い申し上げます。

補足日時:2008/12/19 17:33
    • good
    • 0
この回答へのお礼

お礼が遅くなって申し訳ありませんでした。
初めて聞いた「正規表現」を私なりに調べていました。すごい便利なことができて驚きです。まだまだ実務レベルの情報収集・知識習得には至っていないので、この機会に少しでも正規表現が使えるように学習したいと思っています。
ありがとうございました!!!

お礼日時:2008/12/27 09:29

No.4の補足に関してお答えします。



区切り文字がカンマだと思い込んでました。ピリオドなんですね。(-_-;

データ->区切り位置->区切り位置指定ウィザード2/3ページ で
区切り文字:その他
隣の四角:.(ピリオド)
とすればOKです。

A1にある文字列の最後にピリオドを付けたい場合は、B1に
=A1&"."
という式を入れるということでどうでしょう。
    • good
    • 0
この回答へのお礼

ありがとうございます。
できました。
「形式を選択して貼り付け」は何度も開いているのに、決まった機能しか使っていなかったので、教えていただいた行列入替も初めて知りました。もっと機能を活用できるよう勉強したいと思います。

お礼日時:2008/12/19 13:51

>最終的結果のピリオドが抜けてしまうのは防げますか?


あ、ピリオドは必要なんですね
B1に=LEFT(A1,FIND(",",A1,1)-1)  下方向コピー

ここの部分を
B1に=LEFT(A1,FIND(",",A1,1))  下方向コピー
に変更
    • good
    • 0
この回答へのお礼

ありがとうございます。
ピリオドが出てきました。
この方法は別の業務でも使えそうなので、便利なものを教えていただいて嬉しいです。

お礼日時:2008/12/19 13:18

一番簡単なのは、テキストエディタかワープロにペーストしてピリ


オドをピリオド+改行に置換してコピーすること。1分かからない。

あなたは質問番号4564154で同じような回答を貰って、20ポイント付
けたでしょう。要はワードかなんかで1パラグラフごとに改行されて
いるように整えてから、エクセルに貼ればいいんですよ。

この回答への補足

ありがとうございます。
そうなんです。前回は文章がメインだったので、教えていただいた方法でワードを使って作業してみました。
今回は、目次やタイトルがあって「1.○○........P1」となっているものや「1.1.2△△」と小タイトルがついているものが混在しています。上記の『.』全て、○○.....P1の『.』もピリオドと認識されてしまうので、ワードで置き換えすると全部改行されてしまいました。そこで、エクセルでフィルタを使って該当文章だけ抽出して作業できれば、と思ったのです。抽出した文章をワードなどに貼り付けて作業するのと手間的に有効なほうで実行したいと思っています。これから先も同様の作業が長い期間あると予測されるので、できるだけ手間がないような形でやっていきたいのが希望です。
エクセルに拘っているわけではないのですが、最終的データはエクセルにする必要があるので、質問タイトルをエクセルにしました。模索中なため重複した質問となりますが、ご教授願えればと思います。

補足日時:2008/12/19 11:58
    • good
    • 0

セル内で改行を入れたい場合は、置換文字列としてctlr+J(改行コード)を使うことができるので、


編集->置換
で、
検索する文字列:,(カンマ)
置換後の文字列:,ctlk+j(カンマのあとにctrlキーとJを同時押し)
とするとできます。

この回答への補足

ありがとうございます。
面白いほどアッサリ改行してくれました。
これを一文ずつ個別のセルへ分ける・・・
何か良い手はありませんか?

補足日時:2008/12/19 11:42
    • good
    • 0

とりあえずカンマで区切られた部分でセルを分けたいのであれば、


データ->区切り位置
で区切り文字としてカンマを指定すればすぐできます。

これを縦に並べたい場合は、横並びになった全体をコピーして、
編集->形式を選択して貼り付け->行列を入れ替える
とすれば可能です。

この回答への補足

ありがとうございます。
データが固定長だからでしょうか。
単語毎に分かれてしまいます。

補足日時:2008/12/19 11:36
    • good
    • 0

如何しても関数を利用すると言うなら


A1に原文
A2に=RIGHT(A1,LEN(A1)-FIND(",",A1)) 下方向コピー
B1に=LEFT(A1,FIND(",",A1,1)-1)  下方向コピー

あ、[.]じゃなく[,]になってるな。
原文の最後にも[,]必要、エラー処理はしてませんw

この回答への補足

ありがとうございます。
キレイに分かれました。
が、最終的結果のピリオドが抜けてしまうのは防げますか?

補足日時:2008/12/19 11:27
    • good
    • 0

そのセル内容をコピーし、メモ帳等に貼り付け。


エクセルの外部データー取り込みで、カンマ区切りで取り込んで、範囲をコピーして行列入れ替えで貼り付け。

この回答への補足

ありがとうございます。
カンマ区切りだと単語毎に分かれるのですが・・・。
元のデータが固定長だからでしょうか?

補足日時:2008/12/19 11:16
    • good
    • 0

セル内での改行は地道に手動でするしかありません。


ピリオドとBの間にカーソルを置いて、
Alt+Enterを押して改行してください。

A1セルの文章を改行ごとにB1、B2へと表示させるのは、
AAAやBBBの文字数が元々決まっているのであれば、
LEFT関数やRIGHT関数、MID関数などでできますが、
文字数がそのときどきによって、変わったりするのであれば、できません。
    • good
    • 0
この回答へのお礼

ありがとうございます。
でも、手動での作業するにはデータ量が多くて・・・。
ピリオドを認識させて改行を自動にしてくれるものを探しています。

お礼日時:2008/12/19 11:05

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!