痔になりやすい生活習慣とは?

1 テキストを読み込んで並べ替えなどして
  表(1行目はタイトル)を作り、
  フィルタをかける(マクロ)

2 フィルタオプションで必要なデータを抽出
  その際に日付を手入力する
  (例  A列(毎回決まった列) 
   2005/4/1以上 降順)

3 その後の作業(マクロ)

このように1のマクロを起動して
その後 2を手作業して 更に3をマクロを
起動すると言う方法をとっていますが

2の内容もマクロで作って 「日付」だけを
入力するように求められて それを入力するだけで
その後の作業も自動で行うことは出来るでしょうか?

A 回答 (2件)

出来るかって事なら出来ます。


下記はオートフィルタのサンプルです。

Sub Test()
Dim fs As String, r As Range
 fs = Application.InputBox _
   ("日付入力", "抽出", Format(Date, "yyyy/m/d"), Type:=2)
 Set r = ActiveSheet.Range("A1").CurrentRegion
 r.AutoFilter
 If ActiveSheet.FilterMode Then r.AutoFilter
 r.AutoFilter Field:=1, Criteria1:=">=" & fs
End Sub
    • good
    • 0
この回答へのお礼

朝はやくにもかかわらず早速の回答ありがとうございます
さっそくためさせていただきます
ありがとうございます

お礼日時:2005/04/27 08:11

具体的な内容がないので、私はコードは書きませんが、papayukaさんがお書きなったように、Inputbox で、途中を対話モードにすればよいと思います。

そのInputbox の入力のタイミングをどこに置くかといえば、全体の流れからすれば最初に置いたほうが良いですね。

1→{対話モード}→2→3 ではなく、
   ↓
{対話モード}→1→2→3
   または、
ユーザー直接入力|[以降はマクロで]→記入チェック→1→2→3 
(こちらのほうが作業的には速い)
フィルターオプションは、Criteria をセル上に書き込まなくてはなりませんから、InputBox で行っても、また、セルに貼り付けなくてはなりません。

というようにして、それらを一体化すればよいと思います。

>その後の作業も自動で行うことは出来るでしょうか?
マクロの拘束をほとんどフリーにした状態で、ふたたびマクロに戻ることも可能ですが、かなり手の込んだコードになってしまうはずです。
    • good
    • 0
この回答へのお礼

回答感謝です

マクロを作るうえでの指針を頂器参考になりました
色々とありがとうございます

お礼日時:2005/04/29 19:17

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング