• ベストアンサー

VBAで左端文字を削除

エクセル2002使用です。 A列に文字列が1~1000行まで入力されています。 文字列の左端に記号(1文字)が入力されているので削除したいのですが、 (○株式会社あいうえお)←○を削除したい VBAで下記のように記述したのですが、 実行時エラー424となります。 Sub 削除()  Dim i As Integer  For i = 1 To 1000 '行番号を変更  Left(Cells(i, 1).Value, 1).Delete '列番号を変更  Next End Sub よろしくお願いします。

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

  • ベストアンサー
  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

こんばんは。 私も、#1 さんのご意見には賛成ですが、一応、VBAが回答の中心なので、以下にマクロの修正版と、一般的なコードを置いておきます。 Sub 削除()  Dim i As Long  For i = 1 To 1000 '行番号を変更  Cells(i, 1).Value = Mid$(Cells(i, 1).Value, 2) '  Next End Sub 'もう少し手を加えると ' ↓ Sub LeftCharDel()  Dim c As Range  For Each c In Range("A1:A1000")   c.Value = Mid$(c.Value, 2)  Next c End Sub たぶん、こんな風でよいはずですが……。

ken123
質問者

お礼

Wendy02様 早速のご回答ありがとうございました。 他にも削除した文字があったのでどうしてもVBAで処理したかったのでとても助かりました。 「$」も勉強になりました。1000行やったら速さが違いました。 今後ともよろしくお願いします

その他の回答 (1)

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

「○株式会社あいうえお」がA1ならば B1に「=MID(A1,2,1000)」(後の1000は適当な大きい数) などとしてコピーペースト→コピー&形式を選択して 貼り付け→値とすれば、よいのでは? どうしてもマクロでやりたいなら方法はありますが。

ken123
質問者

お礼

yambejp 様早速のご回答ありがとうございました。 MID関数だったんですね。ありがとうございました。 大変お手数をとらせました。 今後ともよろしくお願いします。

関連するQ&A