No.3ベストアンサー
- 回答日時:
なるほど・・・・。
つまり、1,2,3,....31枚とプリントアウトすると、それぞれに5/1,5/2,5/3,.....5/31と日付が記入されているということですね?。
これをVBAで行うとなると・・・、PrintOutメソッドをループにかける必要が出てきそうですね。簡単な思いつきマクロでは、
Sub Test()
Dim myPrompt_s As String, myTitle_s As String
Dim myPrompt_e As String, myTitle_e As String
Dim startDay As Date, endDay As Date, I As Integer
On Error GoTo ExitMe
myPrompt_s = "何月何日からですか?"
myTitle_s = "印刷開始日付"
myPrompt_e = "何月何日までですか?"
myTitle_e = "印刷終了日付"
startDay = Format(InputBox(myPrompt_s, myTitle_s), "yyyy/m/d") '開始
endDay = Format(InputBox(myPrompt_e, myTitle_e), "yyyy/m/d") '終了
For I = 0 To endDay - startDay
Range("A1").Value = Format(startDay + I, "yyyy/m/d")
ActiveSheets.PrintOut
Next I
ExitMe:
End Sub
のような感じではないでしょうか(この例ではセルA1に日付が入ります)。
ただ、このマクロ、走ることは走りますが、PrintOutメソッドをループ内に入れているので、枚数が増えるとOSやドライバ関係のエラーを誘発するおそれがあります。できれば、ファーマットを31ページ作って(シートの下の方にコピー&ペーストで増やす)印刷範囲を変化させるようなコーディングが望ましいと思われます。
No.2
- 回答日時:
ponkitiさんこんにちは
> 何月何日から何月何日までと入力してボタンを押すだけで
とありますが、日付の並び具合が判りませんので、オートフィルタを使った方法を紹介します。
例)日報データの日付はA列に入力されていて、これをキーとして特定の期間を抽出し、その結果を印刷するという方法です。なお、抽出する期間は、”何月何日から”がセルB1に、何月何日まで”がセルB2に記入されていることとします。
Sub MySheetPrintOut()
Dim startDay As String, endDay As String
With ActiveSheets
'---印刷範囲を使用しているセルすべてに設定します(注記1)
.PageSetup.PrintArea = _
ActiveSheet.UsedRange.CurrentRegion.Address
'---抽出開始~終了期間を取得します
startDay = Format(.Range("B1").Value, "yyyy/m/d")'開始
endDay = Format(.Range("B2").Value, "yyyy/m/d")'終了
'---抽出開始~終了期間でフィルタをかけます
.Range(Cells(4, 1), Cells(.UsedRange.Rows.Count, 1)).AutoFilter
Selection.AutoFilter Field:=1, _
Criteria1:=">=" & startDay, _
Operator:=xlAnd, _
Criteria2:="<=" & endDay
'---印刷します(注記2)
.PrintOut
'---フィルタを解除します
Selection.AutoFilter Field:=1
End With
End Sub
注記1:このコードでは、一切、記入がない列が存在する場合の配慮がありませんので注意してください。
注記2:印刷用紙や印刷部数の値を必要に応じて追加してください。
簡単に書いていますので、実際はエラー処理などが必要です。
Win98SE+Excel2000の環境にて動作確認済みです
この回答への補足
早速のプログラムありがとうございます。
ちょっと状況の説明が甘かったので補足いたします。
製造日報がエクセルで作成されており、通常は日付欄は
空欄になっています。いつも、これを毎月見直して変更したりして一枚だけ印刷し、1ヶ月分コピー機で印刷してい
ます。これを自動的に日付入りをプリンターで印刷したい
ということです。
イメージ的には、日報印刷のマクロボタンを押すと
「何月何日からですか」とダイヤログボックスがでて
たとえば5月1日と入力、すると次に「何月何日までですか」と出てきて、5月31日と入力すると、「印刷しますか?」とでて、「ハイ」を押すとあとは、日付欄に5月1日が自動入力されて印刷→5月2日が自動入力されて印刷→・・・→5月31日入力されて印刷→終了 となるようなマクロです。単純に上記の操作を自動記録でやってみたらうまくいったのですが、とても長いマクロになるし、日付の融通がきかないので使いずらいのです。サブルーチンとか使ってもっと短いプログラムで、対話形式でできる方法をなんとかおしえていただきたいのですが、・・・誠に勝手な御願いで申し訳ございませんが、何卒宜しく御願いいたします。
No.1
- 回答日時:
エクセルのブックが月別で、シート毎に日付で分けていらっしゃるのでしょうか?
上記のような区分けの場合、VBAで制御するまでもなく、印刷したいシートの先頭を選び、SHIFTキーを押しながら印刷したい最終シートを選び、その状態で印刷ボタンを押すと先頭から最終シートまで印刷してくれますが、これではダメでしょうか?
もし、もっと違うことをお望みであればブック及びシートの構成を補足願います。
この回答への補足
説明が不足していて申し訳ございません。
エクセルで作成した日報には日付欄があって、
通常は空欄のものを印刷し、これを1ヶ月分
の31枚をコピー機でコピーしており、製造日報
なので手書きで日報を作成しています。
日報の日付の部分だけでも1ヶ月分自動印字
されないものかと思っています。
宜しく御願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
誕生日にもらった意外なもの
みなさんがもらった誕生日プレゼントで面白いものがあったらぜひ教えてください!
-
フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
あなたが普段思っている「これまだ誰も言ってなかったけど共感されるだろうな」というあるあるを教えてください
-
映画のエンドロール観る派?観ない派?
映画が終わった後、すぐに席を立って帰る方もちらほら見かけます。皆さんはエンドロールの最後まで観ていきますか?
-
海外旅行から帰ってきたら、まず何を食べる?
帰国して1番食べたくなるもの、食べたくなるだろうなと思うもの、皆さんはありますか?
-
天使と悪魔選手権
悪魔がこんなささやきをしていたら、天使のあなたはなんと言って止めますか?
-
日付だけを変更して印刷(Excel)
Excel(エクセル)
-
エクセル 日付 指定 連続印刷
Excel(エクセル)
-
1ヶ月分の日付を一度に出す方法はありますか?
その他(パソコン・スマホ・電化製品)
-
-
4
日誌を作るため印刷時に日付をずらしたい
その他(Microsoft Office)
-
5
エクセル 平日のみ連絡印刷
Excel(エクセル)
-
6
土日祝を省いた印刷
Excel(エクセル)
-
7
エクセルで日付連続印刷
Excel(エクセル)
-
8
EXCELで1ヶ月分の連続した日付をシート名+セルに表示させたい
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルファイルを開く時、常...
-
エクセル印刷時 一枚の書類に...
-
マクロで印刷→セルの値から部数...
-
エクセルで複数のシートの1枚目...
-
エクセルの一部のセルの背景色...
-
1ヶ月分の日付を一度に出す方法...
-
Excel 特定のシートを印刷不可...
-
エクセルで行番号、列アルファ...
-
エクセルの行タイトルを特定の...
-
エクセルでのヘッダーをページ...
-
特定のセルに数値が入っている...
-
印刷枚数をセルの数値としたい
-
条件によって印刷するシートを...
-
エクセル 改ざん防止のため ...
-
Excelで複数のファイルを1度に...
-
エクセルのマクロで複数シート...
-
【Excel】複数シートがあるエク...
-
EXCEL マクロ 条件の合ったシー...
-
エクセルのページ設定を他のペ...
-
カラーで一括印刷したいです
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルファイルを開く時、常...
-
エクセル印刷時 一枚の書類に...
-
エクセルの一部のセルの背景色...
-
マクロで印刷→セルの値から部数...
-
Excel 特定のシートを印刷不可...
-
エクセルで複数のシートの1枚目...
-
エクセルのマクロで複数シート...
-
エクセルでのヘッダーをページ...
-
エクセルで行番号、列アルファ...
-
エクセルの行タイトルを特定の...
-
1ヶ月分の日付を一度に出す方法...
-
祭の祝儀 掲示・集計ソフト
-
特定のセルに数値が入っている...
-
条件によって印刷するシートを...
-
エクセルのシート名を印刷した...
-
エクセルでシートの色がグレー...
-
エクセルで、ヘッダーに他のシ...
-
特定のシートのみ印刷できない...
-
EXCEL マクロ 条件の合ったシー...
-
エクセルの複数シートをNアップ...
おすすめ情報