• ベストアンサー

エクセルで頭に入っている文字列だけを削除する方法

エクセルで列に対して、文字列を削除する方法を教えて下さい。セルA1には100010001、A2には100010532、A3には100002310など、A列のあたまには、必ず1000が入力されています。 この文字列の頭の1000を一括で削除したいのですが、A列を指定して、1000を「データ無し」に置換してしまうと、A1のように100010001が1になってしまうなど、たまたま入っていた先頭ではない同じ文字列も置換されてしまいます。 頭に入っている文字列だけを削除する方法を教えていただきたいです。 どうぞよろしくお願い致します。

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

  • ベストアンサー
  • jellya_a
  • ベストアンサー率35% (12/34)
回答No.2

例えばですが、A1~AXXまで数字が入っているとして 頭の文字数が決まっているのであれば、 B1のセルに =mid(A1,5,len(A1)) と入れて下までオートフィルターを行い、 最後にB1のセルをコピー→形式を選択して貼り付け→値 にしてはいかがでしょう。

nao21213
質問者

お礼

回答ありがとうございます。 貼り付け部分まで御説明いただいたので、わかりやすかったです。 この方法でやれました。

その他の回答 (6)

  • gyouda1114
  • ベストアンサー率37% (499/1320)
回答No.7

回答番号:No.6です >矢印(10の下の縦線)をドラッグして1000の右に移動して<を修正します。 1000の右側をクリックすると矢印が入ります。

nao21213
質問者

お礼

回答ありがとうございます。1000が冗長でーたなので、やってませんでしたが、参考になりました。ありがとうございました。

  • gyouda1114
  • ベストアンサー率37% (499/1320)
回答No.6

区切り位置ウィザードを使って区切る(1000とそれ以外に分ける) 区切り位置指定ウィザードを使う http://hitamegoto.jugem.jp/?eid=251 2ステップ目。で矢印(10の下の縦線)をドラッグして1000の右に移動して完了を押すと1000とそれ以外の数字に区切られます。 1

nao21213
質問者

お礼

回答ありがとうございます。1000が冗長でーたなので、やってませんでしたが、参考になりました。ありがとうございました。

  • AKARI0418
  • ベストアンサー率67% (112/166)
回答No.5

Mid関数だけでなくRIGHT関数でも可能ですよ、RIGHT(A1,LEN(A1)-4)ですね。 VBAでやればよいのではないでしょうか? Sub TrimData() Dim WorkRange As Range Set WorkRange = Range(Cells(1, 1), Range("A65536").End(xlUp)) For Each rng In WorkRange If Left(rng.Value, 4) = "1000" Then rng.Value = Right(rng.Value, Len(rng.Value) - 4) End If Next Set WorkRange = Nothing End Sub

nao21213
質問者

お礼

回答ありがとうございます。 VBAはまだよくわからなくて・・・とはいっても今作っているものを最終的にはマクロに記録しようとおもっているので、参考にさせていただきます。 ありがとうございました。

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.4

B列にデータがないとして。 A列選択>データ>区切り位置で 固定長で頭から5文字の位置で区切る。 A列とB列に分かれるので、A列を削除する。 とか。 (ちなみに2007だとあっているかはわかりません。⇒持ってないので。)

nao21213
質問者

お礼

回答ありがとうございます。固定長で区切るとできました。 2007でやってみました。 ありがとうございます。

  • tmnrgd6
  • ベストアンサー率0% (0/2)
回答No.3

私は仕事で似たような処理をしたことがありますが、その時は以下のような方法を使用していました。 (注:A列に入る文字列の文字数が全て同じであるという前提での方法です) 1.「セルの書式設定」で、A列の表示形式を「文字列」にしてデータ入力 2.B1セルに「=right(a1,5)」という数式を入力 3.必要な分だけB2セル以下にもコピー この方法は、「不必要な文字を削除」するのではなく「必要な文字を抽出」するものです。 ちなみに、数式中の「,5」の部分が抜き出したい文字数ですので、場合によって適宜設定することでいろいろと対応できると思います。 ただ、最初に述べたとおり、あくまでもすべてのデータの文字数が同じでないと使えませんが。

nao21213
質問者

お礼

回答ありがとうございます。 桁を揃えてから行うとできました。 ありがとうございます。

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.1

次の方法は如何でしょうか。 空き列の先頭セルに=MID(A1,5,LEN(A1))に設定、下方向にコピー→空き列をコピー→A列を選択→形式を選択して貼り付け→値を選択→OK→空き列を削除

nao21213
質問者

お礼

回答ありがとうございます。 この方法で覚えることができました。