Excel VBA質問箱 IV

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

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


54106 / 76732 ←次へ | 前へ→

【27428】Re:置き換えをループで・・・
回答  りん E-MAIL  - 05/8/9(火) 8:29 -

引用なし
パスワード
   Help Me! さん、おはようございます。
>>私は3000〜3999をすべて機械部品 に置換したいのです。

>Sub Test()
  Application.ScreenUpdating = False
>  Dim II% 'as Integer
>  'AからC列を置換する場合。
>  For II% = 3000 To 3999
>   Columns("A:C").Replace What:=II%, Replacement:="機械部品", LookAt:=xlWhole
>  Next
  Application.ScreenUpdating = True
>End Sub

ループの回数が少ない分処理が速くなりました。
Sub test()
  Application.ScreenUpdating = False
  Dim r1 As Range, c1 As Range
  On Error Resume Next
  '編集→ジャンプ→セル選択→定数:数値と文字
  '文字列として数値が入っていても処理するように
  Set r1 = Columns("A:C").SpecialCells(xlCellTypeConstants, 3)
  On Error GoTo 0
  '該当セルがあればループ処理
  If Not r1 Is Nothing Then
   For Each c1 In r1
     With c1
      If IsNumeric(.Value) Then
        Select Case .Value
         Case 3000 To 3999 
           .Value = "機械部品"
        End Select
      End If
     End With
   Next
  End If
  Set r1 = Nothing
  Application.ScreenUpdating = True
End Sub

1 hits

【27425】置き換えをループで・・・ Help Me! 05/8/9(火) 7:36 質問
【27426】Re:置き換えをループで・・・ りん 05/8/9(火) 7:53 回答
【27428】Re:置き換えをループで・・・ りん 05/8/9(火) 8:29 回答
【27436】Re:置き換えをループで・・・ Help Me! 05/8/9(火) 11:48 お礼

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