• ベストアンサー

VBAと印刷について

VBAと印刷について エクセル2003で下記の表を作成しました。 月一回書類の確認日があり、 それを行った日をB列のどこか一つの セルに入力します。 そして、その表を月一回印刷します。 今後は印刷はマクロボタンでしたいのです。 ここで質問なのですが、例えば この表を印刷する際、 B列のどこか一つのセルに、「O月分書類確認」 の入力がなければ、印刷できないマクロボタンを 作成することはできるのでしょうか。 確認日は月一回と決まっています。どこの日の セルに入力するかは決まっていません。 ただ、月一回は必ずします。 翌月に決まります。 お願いします。

この投稿のマルチメディアは削除されているためご覧いただけません。

質問者が選んだベストアンサー

  • ベストアンサー
  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.1

Dim PrintFlg As Boolean PrintFlg = False For i = 3 To 33 PrintFlg = Range("B" & i).Value Like "*月分書類確認" If PrintFlg = True Then '印刷処理 Exit For End If Next でいかがですか 3と33は自分のセルの行数に合わせてください。

関連するQ&A

  • エクセルでの計算について

    今、エクセルで確認表となるのを作成しているのですが、まだ勉強不足でして1つ教えていただきたいのですが、 セルAの列には日付(確認日)を入れています。 (月を入力すれば、その月のカレンダー通りに自動で変更されるように式をいれて作成しました) セルBの列には確認する項目においてあり・なしを手書きで書けるようにそれぞれマスを作っています。(最終的に月ごとに印刷して表にするので) ここで質問なのですが、セルA列の日付けに対してセルB列にも一日前の日付けを付ける場合、自動で入力(月ごとに反映)されるようにするには(A列みたいに月を変えればその月に反映される)どういう風に式を入れたらよいのでしょうか? よろしくお願いします。

  • エクセルでの計算について

    今、エクセルで確認表となるのを作成しているのですが、まだ勉強不足でして1つ教えていただきたいのですが、 セルAの列には日付(確認日)を入れています。 (月を入力すれば、その月のカレンダー通りに自動で変更されるように式をいれて作成しました) セルBの列には確認する項目においてあり・なしを手書きで書けるようにそれぞれマスを作っています。(最終的に月ごとに印刷して表にするので) ここで質問なのですが、セルA列の日付けに対してセルB列にも一日前の日付けを付ける場合、自動で入力(月ごとに反映)されるようにするには(A列みたいに月を変えればその月に反映される)どういう風に式を入れたらよいのでしょうか? よろしくお願いします。

  • Excel VBA 印刷したら印刷日を入力

    Excel2003を使用しています。 「データ入力」シートにデータを入力すると、「Sheet1」に予め作成されている書式(表)にデータが表示されるようになっています。 「Sheet1」の表を印刷したら、「Sheet1」のN4セルに入力されている番号と印刷日を「Sheet1」のQ11とR11セル以下に、それぞれ順に書き出すようにしたいのですが、このようなことは可能でしょうか? 印刷の有無の確認と印刷日の履歴を残せたらと思い、質問させていただきました。 よろしくお願いします。

  • エクセルVBAで、月の最終日セルを取得する方法を教えて下さい。

    エクセルで、あるデータを入れるための、1ヶ月の表を作成しています。 1ヶ月は毎月21日から、翌月20日までです。 セルA1に、作成したい月の最初の日付、たとえば2008/5/21と入力し、 マクロボタンを押すと、 A5に2008/5/21、B5に2008/5/22、C5に2008/5/23・・・・(表示は21,22,23) と自動で出るようにしました。 この時5/31と6/1の間に罫線を1本、入れたいのです。 月によって、6/31と7/1の間、2/28と3/1の間というふうに。 月の最終日、もしくは最初を取得して、VBAで罫線を指定したいのですが、 この最終日の指定の方法がわかりません。 どのようにしたら良いか、教えて下さい。

  • Excelマクロで印刷範囲の指定をしたい

    Excelで一覧表を作成し、 『印刷A3』と『印刷A4』というボタンを作り、 それぞれ印刷範囲が異なるようにマクロを組みたいと思い、『印刷A3』の場合は下記のマクロで問題ありませんでした。 【印刷A3】 ------------------------------------------------- Sub 印刷A3_Click() Worksheets(7).PageSetup.PrintArea = _ Range("A6").CurrentRegion.Address With Worksheets(7).PageSetup .Orientation = xlLandscape .PaperSize = xlPaperA3 .Zoom = 63 End With Worksheets(7).PrintOut Preview:=True End Sub ------------------------------------------------- セルA6以降の入力されているセルを選択できるのですが、『印刷A4』の場合は、列の範囲を23列までとし、23列目以降は印刷範囲外としたいです。 (列は最大で33列まであります) 行は『印刷A3』と同じように、入力されている全てのセルを範囲としたいです。 マクロ初心者のため、教えていただけると助かります。 よろしくお願い致します。

  • EXCELで選択した番号のものだけ印刷する

    Sheet(1)に一覧表形式で伝票の内容を作成してします。 A列    B列  C列 伝票番号  科目  支払金額 Sheet(2)にSheet(1)の内容を伝票形式で印刷する為の印刷形式を作成しました。RANGE("A1")に入力された伝票番号に従って印刷します。VLOOKUPで参照しています。 Sheet(3)には、Sheet(2)で印刷する為の伝票番号入力セルと、印刷内容確認の為の表示部分と印刷のボタンを作りました。 現状は伝票番号を1個入力し、印刷ボタンを押すと言う作業を繰り返しています。例えば任意の1個~10個まとめて入力し一括印刷する方法を教えて下さい。 要するに伝票1枚の印刷の時もあれば10枚の時もあるという事です。

  • マクロ vba 印刷 

    エクセルの印刷に関するマクロで教えて下さい。今ページ設定のシート設定で1~8行までを固定しています。B列の9~44行までが必要に応じて数字が入力されます。そして2ページ目の50~85行までが同じく必要に応じて数字が入力されます。3ページ目の91行~126行までが又同じく必要に応じて数字が入力されます。このように10ページまであります。つまり固定した1~8行までを見出しに下に表がずらーっとあります。ここで印刷をする際に、数字の入ったページまでを印刷するマクロを作りたいのです。普通に印刷すると10ページ印刷されてしまいます。例えば12行目まで入力があるならば、1ページだけを印刷。98行目まで入力があるならば、3ページ目までを印刷といった具合です。ちなみに途中数字が空白になる事はありません。詳しい方いらっしゃいましたら、お手数ですが教えて頂けませんでしょうか。宜しくお願いします。

  • 連続印刷のマクロをおしえてください。

    お世話になります。 Excel初心者でマクロ経験は0です。 似たような質問はあるのですが、どこから手を付けていいのかわからず、また時間も無く新たに質問させていただきます。 表1 住所録 A列 通し番号がふってあります B列 送付先 C列 郵便番号 ... というような感じです。 表2 Vlookup関数でB2に表1のA列の値をコピペするとB3、B4、B5等に表1の値が表示されます。 大量に印刷するので、表2 B2に表1のA列の値を自動で入力できるようにしたいです。 A1からA100、A101からA200というように範囲指定できれば有難いです。 マクロはどこのボタンを押して始める というところからご教示をいただけましたら有難いです。 宜しくお願いいたします。

  • Excelで日付を入力したら締日を表示させる

    Excelで経費の支払いの表を作ろうとしています。 A列のセルに日付を入力し、 A列に入力した日付が1日~15日までなら B列のセルにその月の最終日の日付を 16日~31日までなら B列に翌月の15日と自動で表示されるようにするには どうすればいいのでしょうか? 詳しい方、教えてください。 ちなみに使用しているExcel2010です。

  • VBAでやりたいこと質問します!

    こんにちわ。VBAを知って数週間の初心者です。インターネットで質問し回答をコピーして使用したりしています。 使っているうちに、ここはあーしたいあそこはこーしたいとやりたいことが増えてきてしまいました。 ご覧の皆様、良きご回答をお願いします<m(__)m> やりたいことはB列に数字を入力、C列にB列に入力した数字の累計(例.B5の累計はC5、B6の累計はC6、B7の累計はC7・・・)を表示、B列の任意のセルの入力履歴をI列の任意のセルに1回ずつ縦(例.B11の履歴を1回ずつI5、I6、I7、・・・)に表示する。 B12の入力履歴はJ列に1回ずつ縦(J5、J6、J7、・・・)に表示する。 同じようにB13の入力履歴をK列(K5、K6、K7、・・・)に表示する。 それを繰り返しB14はL列にB15はM列、B16はN列に縦に1回ずつ履歴を表示する。 B列の各セルに数字を入力したとき、Enterを2回押すと入力するセルが移動する。 Enter1回のときは、同じセルに続けて数字が入力できる。 B列の各セルに入力した数字は、C列に設けたクリアボタンでクリアすると直前の入力がクリアできる。 D列にはオールクリアボタンを設け、セルの値をオールクリアする。 電卓の「C」、「AC」ボタンの様に使いたいです。 以上、思いつくままに綴ってしまいました。 初心者が、わがままいって本当にすいません<m(__)m> 本やインターネットで、勉強しているつもりですがいつになったら組めるのか予想もつきません((+_+)) よろしくお願いします・・・・追伸、インターネットのVBAに関する質問にすばらしい回答をされている方々はVBAを仕事で使ってみえるのでしょうか?又は 個人的に勉強されているのでしょうか? どうすれば、あのすばらしいアンサーの方々に近ずけるのでしょうか・・・

専門家に質問してみよう