- ベストアンサー
セルのデータ処理
ExcelでA1~A100のデータに関して次の2つのことをしたい。 どうすればいいか。なお(1)と(2)は別々のものです。 (1) データの頭の方に、スペースが入っている場合、そのスペースを除く。 (中間のスペースはそのまま) (2) データの半角ベースでカウントして14文字目以降にデータがある場合は、そこから後のデータをカットする。 ただし13文字目に全角データが入っている場合は、そこから後のデータをカットする。 以上2点よろしくお願いします。 A1だけについての処理で十分ですが。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
次の数式をお試し下さい。 (1)=TRIM(A1) (2)=LEFTB(A1,13)
その他の回答 (2)
- imogasi
- ベストアンサー率27% (4737/17069)
(1)TRIM関数が思い浮かびましたが、先頭と後尾のスペースを取り除いてくれるのは良いが、真中の2以上スペースは1スペースにすると解説にあり、それに該当するケースがあるか、その場合それで良いか考えてください。 先頭と後尾のスペースは半角、全角、混合を問わないようですが、良く注意してください。 (2)>角ベースでカウントして14文字目以降にデータがある場合は バイト単位ということでBつきの =LEFTB(A1,13) で良いと思います。 漢字の真中バイトに、ぶつかったときは、半角スペースが添えられる ようです。 後半 =IF(LENB(JIS(MIDB(A1,13,1)))=LENB(MIDB(A1,13,1)),"全角","半角") を2,3該当データ行でテストしてみてください。これでよいと思いますが、 あと上記式で、"全角"の部分をLEFTB(A1,12) "半角"の部分をLEFTB(A1,13) で置き換えてください。
お礼
本機能で解決つきました。皆さんご回答どうもありがとうございました。
- misatoanna
- ベストアンサー率58% (528/896)
> 中間のスペースはそのまま 中間に連続した複数の半角スペースがある場合の処理は? > データの半角ベースでカウントして14文字目以降 先頭にスペースがあるデータは、そのスペースを除いて14文字目? など、不明な点がありますが、 a.中間のスペースは複数連続していない b.先頭にスペースがあるデータは、そのスペースを除いて文字数をカウ ント という前庭でしたら、 =LEFTB(TRIM(A1),13) でいかがでしょう。
お礼
本機能で解決つきました。皆さんご回答どうもありがとうございました。
お礼
本機能で解決つきました。皆さんご回答どうもありがとうございました。