質問

明けましておめでとうございます。宜しくお願いします。
エクセルの文字表示で、A列(A1~A20)に文字数の違う文字列が20行程入力されています。それを、A列(A1~A20)のセルに入力されてされている文字列から4文字だけ削除して、B列(B1~B20)に表示(入力)したいのですがどうすればいいのでしょうか?
例えば、A列(A1~A20)のセルにそれぞれ「今年は2008年です。etc.」とか「今年は2008年1月3日です。etc.」、、、など文字数の違った文字列が入力されているセルの右から4文字分「etc.」だけ削除してB列(B1~B20)に「今年は2008年です。」とか「今年は2008年1月3日です。」というふうに表示(入力)したいのです。テキストを読んでMID関数で出来るかなと思ったのですが、MID(文字列の、何文字目から、何文字分)というもので、文字列の左から何文字目を先頭に、何文字分を表示ということで、私のやりたい事の逆なのです。いい方法を教えて下さい。

通報する

回答 (6件)

ANo5さんの方法で
=SUBSTITUTE(A1,RIGHT(A1,4),"")

右から四文字を置き換え

この回答へのお礼

ご丁寧に回答有難うございます。皆さんに教えて頂いた事を一つづつ行っていた所ですが、このSUBSTITUTE関数についてテキストを見てやる予定だったので大変、助かりました。さっそく、やってみます。有難うございました。

文字列操作関数SUBSTITUTE(サブスティテュート)が良いのではないでしょうか。

この回答へのお礼

さっそくの回答有難うございます。皆さんに教えて頂いた方法を今からひとつひとつやってみます。有難うございました。

#2 Cupperです

あれ?
すでにまとめが入ってるけど気にせずRight関数を使った例をあげてみます
 #だってさ、LEFT関数、MID関数ときたらやっぱり次はRIGHT関数でしょ
こんな面倒なことする必要はありませんが、こんな事もできると言う例として参考にしてください

=SUBSTITUTE(A1,RIGHT(A1,4),,1)
=SUBSTITUTE(A1,RIGHT(A1,4),,(LEN(A1)-LEN(SUBSTITUTE(A1,RIGHT(A1,4),)))/4)

これは文字列から指定した文字列(右4文字)を空白文字に置換えることで実現しています
 ※SUBSTITUTE関数についてはExcelのヘルプを参照してください
二つ目の長い数式は、右4文字と同じ文字列が他にも存在した場合を考慮した物です
元の文字列から、問答無用で指定した文字列を空白に置換えた場合の文字数を引き算で計算しています
コレを4で割れば、一番最後に出てきた文字列(すなわち一番右)が何番目に出てくるか分かりますので
右4文字だけを指定して空白文字に置き換えることができます


ロジカルな遊びですので真似しなくてもOKです

この回答へのお礼

再度のご教示有難うございます。それも合わせて勉強させて貰います。

もう回答は出ているが、案外易しい問題です。
セルの文字列の長さは=LEN(A1)で求められる。
右端の4文字を省くのだから、文字列の先頭から左部分を採るLEFT関数を使う。LEFT関数は文字数だけを指定するので
=LEFT(A1,LEN(A1)-4)
ーー
文字列で使える関数はそう多くない
MID、LEFT、RIGHT、LEN((それぞれBつき、なしとあり)、TRIMなど
なのでまとめて勉強のこと

この回答へのお礼

親切丁寧な回答有難うございます。皆さんに教えて頂いた方法を今からさっそくひとつひとつやってみます。有難うございました。

=MID(A1,1,LEN(A1)-4)
では?

この回答へのお礼

さっそくの回答有難うございます。そうですか。MID関数とLEN関数を合わせて使用するんですね。助かりました。今から、やってみます。

=LEFT(A1,LEN(A1)-4)
では?

この回答へのお礼

さっそくの回答有難うございます。そうですか。関数を合わせて使用するんですね。助かりました。今から、やってみます。

このQ&Aは役に立ちましたか?11 件

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

新しく質問する

注目の記事

おしトピ教える力コンテスト ファイナリスト発表!

幼児、中学生、人生の大先輩へ教えるお題のファイナリスト回答を選出いたしました。
グランプリに選ばれる回答はどれなのか?是非ご覧ください。

このQ&Aを見た人が検索しているワード


新しく質問する

このカテゴリの人気Q&Aランキング

毎日見よう!教えて!gooトゥディ

べんりQ&A特集