Excel VBA質問箱 IV

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

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


30032 / 76732 ←次へ | 前へ→

【51973】Re:オートフィルタで抽出結果 空白だった場合
発言  ponpon  - 07/10/13(土) 23:21 -

引用なし
パスワード
   ▼瑠璃 さん:
>初めてマクロを本を見ながら 組んでみたのですが
>抽出結果が一つでもあれば、うまく動いてるのです。でも、抽出結果で何もない時はエラーと出てしまうので、マクロが中断されてしまいます。
>空白の時は、つぎのマクロに進むようにするには、
>どうすればよいのでしょうか?
>
>VBAの中身は
>
>Sub オートフィルタ切手()
>'
>' オートフィルタ切手 Macro
>' オートフィルタで切手を抽出する
>'
>
>'
>  Sheets("sheet1").Select
>  Range("BK71:BU101").Select
>  Selection.AutoFilter
>  Selection.AutoFilter Field:=1, Criteria1:=">=1", Operator:=xlAnd, _
>    Criteria2:="<=4"
>End Sub
>Sub オートフィルタ切手コピー()
>'
>' オートフィルタ切手コピー Macro
>' 抽出した切手をsheet2にコピー
>'
>
>'
>  Sheets("sheet1").Select
>  Range("BM72:BM101").Select
>  Selection.Copy
>  Sheets("sheet2").Select
>  Range("B11").Select
>  Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
>    :=False, Transpose:=False
>  Sheets("sheet1").Select
>  Range("BQ72:BQ100").Select
>  Application.CutCopyMode = False
>  Selection.Copy
>  Sheets("sheet2").Select
>  Range("C11").Select
>  Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
>    :=False, Transpose:=False
>  Sheets("sheet1").Select
>End Sub
>
>このようになっています。

こんばんは。
一つにまとめると、
以下のような感じになると思うのですが、
Option Explicit

Sub オートフィルタ切手()
'
' オートフィルタ切手 Macro
' オートフィルタで切手を抽出する
' オートフィルタ切手コピー Macro
' 抽出した切手をsheet2にコピー
'
  With Sheets("sheet1")
    If .AutoFilterMode Then .AutoFilterMode = False
    .Range("BK71:BU101").AutoFilter Field:=1, Criteria1:=">=1", _
    Operator:=xlAnd, Criteria2:="<=4"
    If .AutoFilter.Range.Columns(1).SpecialCells(xlCellTypeVisible).Count > 1 Then
      .Range("BM72:BM101").Copy
     ’    ↑
     ’オートフィルターの結果がどんな場合でもこの範囲ですか?
      Sheets("sheet2").Range("B11").PasteSpecial Paste:=xlPasteValues, _
      Operation:=xlNone, SkipBlanks:=False, Transpose:=False
      .Range("BQ72:BQ100").Copy
     ’    ↑
     ’オートフィルターの結果がどんな場合でもこの範囲ですか?

      Sheets("sheet2").Range("C11").PasteSpecial Paste:=xlPasteValues, _
      Operation:=xlNone, SkipBlanks:=False, Transpose:=False
     End If
     .AutoFilterMode = False
  End With
  Application.CutCopyMode = False
End Sub

2 hits

【51971】オートフィルタで抽出結果 空白だった場合 瑠璃 07/10/13(土) 22:16 質問
【51973】Re:オートフィルタで抽出結果 空白だった... ponpon 07/10/13(土) 23:21 発言
【51975】Re:オートフィルタで抽出結果 空白だった... 瑠璃 07/10/14(日) 0:06 回答
【51976】Re:オートフィルタで抽出結果 空白だった... ponpon 07/10/14(日) 0:19 発言
【51983】Re:オートフィルタで抽出結果 空白だった... 瑠璃 07/10/14(日) 18:23 発言
【51984】Re:オートフィルタで抽出結果 空白だった... ponpon 07/10/14(日) 20:19 発言
【52013】Re:オートフィルタで抽出結果 空白だった... Jaka 07/10/16(火) 10:54 発言

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