[[20190121203202]] 『改行部分だけ削除、非表示』(五十音) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『改行部分だけ削除、非表示』(五十音)

お世話になります。

データブックから参照している書類が2種類ありまして

書類1は書式が

住所(区分)

なんですが、

書類2が

住所(区分)※改行
電話番号

という書式になっています。

今はデータブックを2つ用意してますが、内容は同じデータなので、出来れば1つにまとめたいと思ってます。

そこで書類2に使用している改行有りデータを元データにして、書類1には改行部分を削除して表示できないかと思ったんですが。

果たして可能でしょうか。

< 使用 Excel:Excel2010、使用 OS:Windows7 >


ブック名、シート名、該当シートの構成(レイアウト)がわからないので確信はないけど、手作業、数式、マクロ いずれも、どちらかのシートにまとめてから、改行コードを置換して削れば出来そうな気がします。

(もこな2) 2019/01/21(月) 21:17


 >改行コードを置換して削れば出来そうな気がします。 

改行部分を置き換えて削除する方法が分かりません。
SUBSTITUTE関数を使って改行を空白に置き換える方法はありましたが、それだとただ改行がなくなるだけでした。
アプローチが間違ってるんでしょうか?
(五十音) 2019/01/21(月) 21:40


 >SUBSTITUTE関数を使って改行を空白に置き換える方法はありました
 これでいってみましょ
[[20190121161218]]最近こちらで議論されているみたいですので
 参考になるのではないかと思います。

 やってみて、できなかったらその数式とデータ提示してみてください
(稲葉) 2019/01/21(月) 22:26

稲葉さん、ありがとうございます。
トピを見てみましたが、関数って難しいですね。
???さんの解説を読んでも理解しきれないです。多分2番の解説で触れていることでしょうか。

私のやりたいことは、

A1セルに以下のデータがあり、

東京都東京市東京区東京町 ※改行
(TEL)123-45-6789

これを

東京都東京市東京区東京町

こうしたいです。

もう一度参考トピ読んで考えてみます。
(五十音) 2019/01/21(月) 22:57


>SUBSTITUTE関数を使って改行を空白に置き換える方法はありました

もしかしたら勘違いさせてたかも知れません。

 =SUBSTITUTE(A1,"
","") ※最初のダブルクォーテーションの間はAlt+Enterで改行です。

これで

東京都東京市東京区東京町(TEL)123-45-6789

こうしただけです。
(五十音) 2019/01/21(月) 23:01


 わかってますよ たぶん
 データシート2を参照して、書類1に表示させたいってことですよね?
 で、その際改行以降の電話番号が不要なので、表示させたくない
 ってことですよね?

 であれば、提示したリンクの(???) 2019/01/21(月) 16:56
 こちらがちょっといじればそのまま使えると思います

 >=SUBSTITUTE(A1,"
 >","") ※最初のダブルクォーテーションの間はAlt+Enterで改行です。
 置き換え後の文字を空白ではなく、100個のスペースに置き換えて(REPT関数)
 頭から100文字目までを取り出して(LEFT関数)
 要らない空白を取り除けば(TRIM関数)
 改行の前だけ取り出せませんか?

(稲葉) 2019/01/21(月) 23:23


すごく丁寧に解説してもらってるのは分かるんですが、すみません正直わからない部分が多すぎます。

???さんの式は↓でしょうか。

 =LEN(CLEAN(MID(SUBSTITUTE($A1,CHAR(10),REPT(CHAR(9),100)),100*COLUMN(A1)-99,100)))

 CHAR(10)←この部分が一番分からないです。

SUBSTITUTEの後ろに改行を入れると引数が多くなり、その後がわからなくなります。

だいぶ頭が回らないです。
明日ゆっくり考えてみます。
(五十音) 2019/01/21(月) 23:54


 単純に置き換えで良いんじゃないですか?
 検索セル Ctrl + J の2つ同時押し。(目には見えない)
 置き換え後 未入力。
(BJ) 2019/01/22(火) 02:23

 >CHAR(10)←この部分が一番分からないです。

 改行。(調べれば分かると思うけど。)
 = 123 & CHAR(10) & 456
 ってやれば解ると思います。(折り返して表示にチェックが必要)

(BJ) 2019/01/22(火) 02:29


 BJさん
 置き換えでなく、データシートの電話番号は残したまま(書類2で必要)
 書類1の時だけ表示させない、が趣旨だと私は認識してます

 書類1に入力する計算式はおそらく
 =TRIM(LEFT(SUBSTITUTE(VLOOKUP(A1,データシート1!A:B,2,0),CHAR(10),REPT(" ",100)),100))
 これで事足ります
 おそらくとは、最初はデータシートにどんな文字列が入力されているのか不明
 書類からデータシートの参照方法(これは今でも不明)
 データシートのシート名も不明
 データシートの表構成も不明
 わかっているのはSUBSTITUTEで改行を空白に置き換えることができた
 という情報だけでしたので、このような流れになりました 
(稲葉) 2019/01/22(火) 05:58

稲葉さんありがとうございます。
上の式でできました。参照スレの???さんの解説を読んで頑張って理解します。
BJさん、CHAR関数は()内の数字で返しが変わるんですね。10で改行できました。
(五十音) 2019/01/22(火) 07:49

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.