Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


59593 / 76732 ←次へ | 前へ→

【21824】Re:セル内の指定した文字の前のみを削除
発言  ichinose  - 05/2/1(火) 10:35 -

引用なし
パスワード
   ▼みっちー さん:
おはようございます。
>
>下記のコードでうまく動作させることが
>できました。ありがとうございます。
>
>またまた質問で大変恐縮なのですが、
>セル内の指定した文字以降のみを削除という場合には
>sushikiの中の指定する文字の位置を変えれば
>できるものなのでしょうか?
投稿したコードは、「ED」より前の文字列を削除ですから、
「指定した文字以降のみを削除」となると、数式の変更が必要です。

以下のコードは、前回と同じ条件で「ED」以降を削除するコードです。

'=======================================================
Sub test()
  Dim rng As Range
  Dim myadd As String
  Set rng = Range(Cells(1, 1), Cells(Rows.Count, 1).End(xlUp))
  myadd = rng.Address
  sushiki = "=if(iserror(FIND(""ED""," & myadd & "))," & _
        "if(" & myadd & "="""",""""," & myadd & ")," & _
        "substitute(" & myadd & _
        ",MID(" & myadd & ",FIND(""ED""," & myadd & "),LEN(" & myadd & ")),""""))"
  Debug.Print sushiki '数式を確認して下さい
  rng.Value = Evaluate(sushiki)
End Sub

数式内の「ED」をパラメータ化にすれば、指定文字列で実行する事ができると
思います。
確認して下さい。


尚、何か問題があった場合、出かけてしまうので返信が夜になってしまいます。


>
>>「ED」(半角の大文字)という文字列が判断材料と言う事でよろしいですか?
>>'=============================================================
>>Sub test()
>>  Dim rng As Range
>>  Dim myadd As String
>>  Set rng = Range(Cells(1, 1), Cells(Rows.Count, 1).End(xlUp))
>>  myadd = rng.Address
>>  sushiki = "=if(iserror(FIND(""ED""," & myadd & "))," & _
>>        "if(" & myadd & "="""",""""," & myadd & ")," & _
>>        "MID(" & myadd & ",FIND(""ED""," & myadd & "),LEN(" & myadd & ")))"
>>  Debug.Print sushiki '数式を確認して下さい
>>  rng.Value = Evaluate(sushiki)
>>End Sub
>>
>>上記のコードは、アクティブシートにA列に対して、
>>「ED」以前の文字列を削除します。
>>オーソドックスな方法は、どなたかの投稿があると思いますが、
>>4000行ぐらいなら、こんな方法もあると言う事で・・・。
0 hits

【21819】セル内の指定した文字の前のみを削除 みっちー 05/1/31(月) 18:10 質問
【21822】Re:セル内の指定した文字の前のみを削除 ichinose 05/1/31(月) 19:36 発言
【21823】Re:セル内の指定した文字の前のみを削除 みっちー 05/2/1(火) 10:04 お礼
【21824】Re:セル内の指定した文字の前のみを削除 ichinose 05/2/1(火) 10:35 発言
【21846】Re:セル内の指定した文字の前のみを削除 みっちー 05/2/1(火) 21:37 お礼

59593 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free