Excel VBA質問箱 IV

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

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


44374 / 76732 ←次へ | 前へ→

【37377】Re:オートフィルタの結果がもし空白なら
発言  Jaka  - 06/5/2(火) 11:16 -

引用なし
パスワード
   >Set WS1 = Sheet(1)
>Set WS2 = Sheet(2)
>Set WS3 = Sheet(3)
???コンパイルエラーにならないのでしょうか?

>.Range("A2:A" & ar).CurrentRegion.AutoFilter 5, Criteria1:=">=2006/1/1", Operator:=xlAnd, Criteria2:="<=2007/12/31"
CurrentRegionを使うなら、これ↓で良いと思います。が、
データ部がCurrentRegionで確実に取得できるデータ状態である事が前提になります。
.Range("A2").CurrentRegion.AutoFilter 5, Criteria1:=">=2006/1/1", Operator:=xlAnd, Criteria2:="<=2007/12/31"

>'もし、2列目以降が空白なら、処理に進む
>  If WorksheetFunction.CountA(Range("A2:A65536") _
>  .SpecialCells(xlCellTypeVisible)) = 0 Then
2列目以降でなく、2行目移行です。
こういう事は正確に書かないと、すれ違いの元になります。

とりあえず1部分だけですけど...。

With WS1
  .AutoFilterMode = 0
  With .Range("A2").CurrentRegion
    .AutoFilter 5, Criteria1:=">=2006/1/1", Operator:=xlAnd, Criteria2:="<=2007/12/31"
    'もし、2列目以降が空白なら、処理に進む
    '他にやり方が無いわけでもないですが、単純にタイトル行は
    '必ずカウントされるから(最低が1)、2より少なければで無しと判断して処理。
    'ただ、エクセル関数等も1と判断される( = "" もカウント)。
    'データを見てないので、その辺の判断はわかりません。
    If WorksheetFunction.CountA(.Columns("A") _
     .SpecialCells(xlCellTypeVisible)) < 2 Then
     GoTo 処理
    End If
  End With
End With

0 hits

【37345】オートフィルタの結果がもし空白なら momo 06/5/1(月) 13:33 質問
【37348】Re:オートフィルタの結果がもし空白なら ハチ 06/5/1(月) 13:47 回答
【37350】Re:オートフィルタの結果がもし空白なら momo 06/5/1(月) 14:44 質問
【37352】Re:オートフィルタの結果がもし空白なら ハチ 06/5/1(月) 15:33 発言
【37355】Re:オートフィルタの結果がもし空白なら Jaka 06/5/1(月) 16:16 発言
【37364】Re:オートフィルタの結果がもし空白なら momo 06/5/1(月) 17:57 質問
【37366】Re:オートフィルタの結果がもし空白なら Kein 06/5/1(月) 18:21 発言
【37376】Re:オートフィルタの結果がもし空白なら momo 06/5/2(火) 9:29 質問
【37377】Re:オートフィルタの結果がもし空白なら Jaka 06/5/2(火) 11:16 発言
【37379】追加 Jaka 06/5/2(火) 13:21 発言
【37380】Re:追加 momo 06/5/2(火) 14:27 お礼
【37381】Re:追加 Jaka 06/5/2(火) 15:30 発言
【37351】Re:オートフィルタの結果がもし空白なら Kein 06/5/1(月) 15:13 回答

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