• ベストアンサー

Excel for Mac2011の改行への置換

Excel for Mac2011を利用しています。 セルの値に下記のようなhtmlが存在します。 <table>○○○○○○</table> これを <table>○○○○○○ </table> のように「</table>」の直前に改行を加えたいのですが、 この場合、置換え後の文字列に何を指定すればいいのでしょうか。 よろしくお願いいたします。

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

  • ベストアンサー
回答No.2

Mac の Excel は改行記号の検索や置換をできるようになっていないので、少し回りくどいやり方をする必要がありそうです。 http://okwave.jp/qa/q778250.html この #3 のように SUBSTITUTE 関数を使うか、 http://okwave.jp/qa/q723066.html この #2 のように VBA で置換するかでないとできないのでは。 とはいえ記事が古いですし、私は Excel 2008 を使っているもので VBA が使えませんので、VBA がうまくいくかどうかわかりません。 SUBSTITUTE 関数の方はうまくいきました。 Mac は改行記号が違うので、改行記号を CHAR(13) に変更して "</table>" を CHAR(13)&"</table>" に置換してみてください。

ao_
質問者

補足

ありがとうございます。 試してみました。 数式にエラーは出ませんでしたが、返された値は参照元と全く同じ状態でした。 B1の値「<table>○○○○○○</table>」 B4の数式「=SUBSTITUTE(B1,"<table>",CHAR(13)&"<table>")」 これをCSVで保存し、miで開いても改行は入っていませんでした。 ちなみに下記でも試してみました。 C1の値「<table>○○○○○●</table>」 C4の数式「=SUBSTITUTE(C1,"●",CHAR(13))」 この場合、返された値は●が半角スペースくらいの余白に変わり、 CSV形式にしてmiで開いてみると改行されていました。

その他の回答 (2)

回答No.3

>B4の数式「=SUBSTITUTE(B1,"<table>",CHAR(13)&"<table>")」 この通りに書いたんだとすると table の前にスラッシュが入っておりませんので、文字列の先頭に改行が入ってしまいます。 数式が正しいか、mi で見た時に文字列の先頭に改行が入っていないか、もう一度ご確認ください。 >この場合、返された値は●が半角スペースくらいの余白に変わり、 >CSV形式にしてmiで開いてみると改行されていました。 前回答の参考ページに書いてありますように、SUBSTITUTE 関数を使った場合は置換後にセルの書式設定を変更しないと改行が表示に反映されません。

ao_
質問者

お礼

大変失礼しました。 仰る通り、単純なミスでした。 また、書式設定で「折り返し」にチェックを入れたら改行されました。 解決です。 ありがとうございます。

  • tsubuyuki
  • ベストアンサー率45% (699/1545)
回答No.1

Win版なら、 置換後の文字列の</table>の前に「Ctrl+J」でいけるんですけどね。 (見た目はそんなに変わりませんが、セル内改行の意味です。)

ao_
質問者

補足

ありがとうございます。 はい。Winなら「Ctrl+J」で改行と認識するようですが、Macだと違うようです。

関連するQ&A