- ベストアンサー
エクセルVBAでのオートフィルター後の再実行方法
- エクセルVBAのマクロにおいて、オートフィルターを実行後に一時停止し、選択したセルに直接入力を行った後、マクロを再実行したい場合の方法を解説します。
- エクセルVBAのマクロでオートフィルターを使用する際、特定の条件で一時停止させ、選択したセルに直接入力した後、マクロを再実行させたい場合の手順を紹介します。
- エクセルVBAのマクロでオートフィルターを実行した後、一時停止し、選択したセルに直接入力を行った後にマクロを再実行させたい場合の方法をご紹介します。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
下記でどうですか?。 最初に Macro1を実行する。 次に Macro2を実行する。 Dim Flt As AutoFilter Sub Macro1() ' ' Macro1 Macro ' マクロ記録日 : 2008/3/2 Set Flt = ActiveSheet.AutoFilter If Flt Is Nothing Then ' AutoFilterがOFFなら何もしない Else ' AutoFilterがON であれば、OFF(解除する) Selection.AutoFilter End If '製品コードより枠番を選ぶ Range(("A1"), ("D1")).Select ' 例 AutoFilterをかけるセルを指定する Selection.AutoFilter Field:=12, Criteria1:="=?????1*", Operator:=xlAnd 'ここで一時停止し、エクセルシート上で入力した後、次の行を実行したい END Range("A1").Select End Sub Sub Macro2() ' ' Macro1 Macro ' マクロ記録日 : 2008/3/2 Set Flt = ActiveSheet.AutoFilter If Flt Is Nothing Then ' AutoFilterがOFFなら何もしない Else ' AutoFilterがON であれば、OFF(解除する) Selection.AutoFilter End If Range(("A1"), ("D1")).Select '例 AutoFilterをかけるセルを指定する Selection.AutoFilter Field:=12, Criteria1:="=?????2*", Operator:=xlAnd 'ここで一時停止し、エクセルシート上で入力した後、次の行を実行したい Range("A1").Select END End Sub
お礼
ありがとうございます。 マクロについて、まだまだ理解できなくて(Tマクロで悪戦苦闘しています)アドバイス頂きましたので早速、試してみます。 また、教えてください!!