• ベストアンサー

宛名ラベル印刷について

こんにちは! 早速ですが、アクセスで教えていただきたいことがあります。 お客様の住所等をを宛名ラベルに印刷する際、数が少ないので ラベルの下の方がどうしても余ってしまい、もったいないので これを次に印刷する時に使いたいのです。 印刷する際、ラベルのどの部分に印刷するか選べるように することってできないでしょうか? できたとして、VBAでプログラム…ですよね? 私はまだVBAは超初心者なので、できるだけ わかりやすく教えていただけないでしょうか? (勝手な言い分ですみませんxxx) よろしくお願いします!

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

  • ベストアンサー
  • ryuu001
  • ベストアンサー率61% (46/75)
回答No.7

手作業による印刷でしたら、方法は何通りかあります。 1 デザインビューから印刷でも良いし、 データーべースウインドウ から 該当のレポートを直接印刷する場合は、 2 印刷するレポートを選択し  ファイル → 印刷 とか 3 レポート名の上に マウスカーソルを置き  右クリック → 印刷 とか。 4 コマンドボタンを押した時に印刷させたいなら  コマンドボタンのプロパティの”イベント”で   ”クリック時”を [イベント プロシージャ] にし、  コードは Docmd.OpenReport "レポート名", acViewNormal です。

kojirouap
質問者

お礼

できました! 使用済ラベルの枚数分1件目のデータを印刷して、 余ったラベルから印刷を開始するように、ちゃんとなりました! 長々とおつあいいただいて本当にありがとうございます。 やっぱりVBAは難しいですね!このラベル印刷の件も、 ウィザードとかでもっと簡単に設定できるのかと思っていました(^^;) これからVBAの勉強を始めようと思っています。早く自分の 思うようにできるよう、がんばります!!

その他の回答 (6)

  • ryuu001
  • ベストアンサー率61% (46/75)
回答No.6

---------------------------- --コード全体を表示します。-- ---------------------------- ↑この部分を含み、ここから上 全部不要です。 例えば、Private Sub Report_Open(Cancel As Integer) の行が 2行有ります。 その為のエラーだと思います。

kojirouap
質問者

補足

だいぶ近いところまできました! 今度は 3 の「プレビューを表示しないで直接印刷する」ですが、 余白枚数を入力すると、その次はどうしてもプレビュー画面にいってしまいます。 ということは、デザインビューから印刷ってことでしょうか???

  • ryuu001
  • ベストアンサー率61% (46/75)
回答No.5

>「イベント プロパティに指定した式 開く時 でエラーが発生しました:名> 前が適切ではありません:Report_Open]」 これは、文章中の -->I = InputBox("余白枚数入力")<--この部分を使われましたか?  それでしたら -->I = InputBox("余白枚数入力")<-- の前後が 全角のスペースになっていますので、 VBAでは 半角のスペースに切り替えてください。 > ちなみに、1の「印刷しないラベルの枚数を入力する」というのは、どこで入力するのでしょうか? これは、レポートを開いたときに 問い合わせがあります。 まさに、今回エラーになった -->I = InputBox("余白枚数入力")<--この部分です。 

kojirouap
質問者

補足

お返事遅くなってすみません! エラー、半角スペースになっていますが、相変わらずエラーのままです。 私のとこの Report_ラベル印刷:クラス モジュール の一覧を載せます どこか間違っているところがありますか?(私にはまるで意味が わからないので・・・(^^;))その他、なにか他に理由があるのでしょうか・・・ Option Compare Database Dim I As Integer Option Explicit ――――――――――――――――――――――――(←これ線のつもり) Private Sub Report_Open(Cancel As Integer) I = InputBox("余白枚数入力") End Sub ――――――――――――――――――――――――――――――――――― Private Sub 詳細_Print(Cancel As Integer, PrintCount As Integer) If I > 0 Then Me.NextRecord = False Else Me.NextRecord = True End If I = I - 1 -----ここまで------ ---------------------------- --コード全体を表示します。-- ---------------------------- Option Compare Database Dim I As Integer Private Sub Report_Open(Cancel As Integer) I = InputBox("余白枚数入力") End Sub ――――――――――――――――――――――――――――――――――― Private Sub 詳細_Print(Cancel As Integer, PrintCount As Integer) If I > 0 Then Me.NextRecord = False Else Me.NextRecord = True End If I = I - 1 End Sub End Sub

  • ryuu001
  • ベストアンサー率61% (46/75)
回答No.4

次の要領で良いでしょうか? 1 印刷しないラベルの枚数を入力する。 2 印刷しないラベルの無い枚数分 1件目のデーターを印刷。 3 プレビューを表示しないで、直接印刷します。 (実験の結果、プレビュー表示 と 直接印刷の場合はうまく行っているようなのですが、プレビュー表示画面から 印刷すると、用紙の先頭から出力されてしまいます。) ----- 方法 ----- --レポート の プロパティ を設定します。-- 4 ”イベント” の ”開く時” を [イベント プロシージャ] にします。 5 ”...”ボタンを押すと VBAコード入力画面になります。  そこに、 I = InputBox("余白枚数入力") と入力します。 6 そのついでに、その入力画面の 1番上の行に  Option Compare Database となっていますので、そのすぐ下の行に Dim I As Integer と入力します。 --次は、詳細のプロパティ を設定します。-- 7 ”イベント” の ”印刷時” を [イベント プロシージャ] にします。 8 VBAのコードは次の通りです。   If I > 0 Then Me.NextRecord = False Else Me.NextRecord = True End If I = I - 1 -----ここまで------ ---------------------------- --コード全体を表示します。-- ---------------------------- Option Compare Database Dim I As Integer Private Sub Report_Open(Cancel As Integer) I = InputBox("余白枚数入力") End Sub Private Sub 詳細_Print(Cancel As Integer, PrintCount As Integer) If I > 0 Then Me.NextRecord = False Else Me.NextRecord = True End If I = I - 1 End Sub

kojirouap
質問者

補足

ご丁寧にありがとうございます! VBA、入力してみたのですが、デザインビューから違うビューへいこうとすると、 「イベント プロパティに指定した式 開く時 でエラーが発生しました:名前が 適切ではありません:Report_Open]」 というエラーがでました。コード自体はそっくりコピーさせていただいたので(^^;) 入力する場所が悪かったのでしょうか・・・ ちなみに、1の「印刷しないラベルの枚数を入力する」というのは、どこで入力するのでしょうか? 本当に知識不足で申し訳ないです(;_;)

  • void2000
  • ベストアンサー率17% (41/229)
回答No.3

 NO.1です。VBAを使わない方法ばかりで申し訳ないです。  シールの無い場所にもう一度何かが印刷されてもインクがもったいないだけで別に害は無いでしょう。  下のほうのシールが余っている部分に印刷されるようにファイルを作り、シール紙をもう一度通せば良いように思いますが。  どうしても無駄な印刷を避けたいときは、空白の字を書いて(スペースキーなどで必要な行数を書いて)シールの無い部分が印刷されないようにするという方法でいかがでしょう。    

kojirouap
質問者

補足

シールが余っている部分に印刷されるようにファイルを作る、ってことは、 ラベルがないところの分だけ違うレコードを印刷する、ってことですよね・・・? やってみます!

  • asuca
  • ベストアンサー率47% (11786/24626)
回答No.2

祖フォトは何を使っての話でしょうか? 多くの宛名印刷用のソフトやデータベースの場合書き出し位置を指定できるはずです。

kojirouap
質問者

補足

使用ソフトはAccess97です。宛名印刷"専用"のソフトではないですが・・・

  • void2000
  • ベストアンサー率17% (41/229)
回答No.1

 あまったラベルの上下を逆にしてプリンタに差し込んだらどうでしょうね。  その場合、ラベル紙のいちばん上の余白の幅が重要ですが、鋏みや糊の手作業で調節したらどうでしょう。

kojirouap
質問者

補足

言い忘れてましたが・・・私の使っているラベル、実は上下が あるんですっっ!(泣)  某運送会社の宛名印刷専用ソフトでは、クリックで印刷する場所が 選べるようになっていて便利でした。  そんなふうにできないななぁ~・・・と思っています。

関連するQ&A

  • 宛名ラベルの印刷方法について

    はじめまして。私はEXCEL2002で作成した住所録を、Word2002の差込印刷ウィザードを使用して宛名ラベルを印刷しようとしています。 ですが、ラベルが中途半端な枚数分残ってしまい、大変もったいないので、ぜひとも宛名ラベルを指定位置から指定枚数分だけ印刷する方法をご存知の方がいらっしゃいましたら、教えてください。お願いします。

  • 同一住所を宛名ラベルに印刷する方法

     こんばんわ。またお世話になります。  宛名ラベルの印刷に不慣れで戸惑っています。  会社の住所を宛名ラベルに何枚も印刷していく仕事が明日、待っています。(返信用の封筒用のために作成します。)  普通の宛名のように(例えば、「会社」→「お客様A」、「会社」→「お客様B」のように)入力して、差込印刷をして・・・という感じで作成したいのです。  一瞬、「会社の住所を延々とコピーして、普通にラベル印刷?」とも思いましたが、そうではない気がします。  こういうラベルを作った方、教えてくださるようお願い致します。  なお、会社のPCはExcel2003(Word2003)で、自宅PCはそれぞれ2002です。

  • アクセス2000の宛名ラベル印刷について

    基礎的なことだと思いますが、お答えをお願いします。 アクセス2000において宛名ラベル印刷を行う際、3列6行の18枚の宛名ラベルシールがあるのですが、18名分印刷する人数がいない場合、次回に残りの途中からの印刷はできるのでしょうか? 向かって左上からしか印刷ができないと、どんどん宛名ラベルシールが無駄になっていってしまうので、途中から印刷できる方法をお知りの方は、教えてください。 よろしくお願いします。 仕事で私用してるので、早めのご回答がかなり嬉しいです。

  • Accessでの同一宛名ラベル作り方

    Accessで宛名ラベルを作成するときに、1枚の用紙に全てある1件の宛名で印刷したいのですが、どのようにすればよいでしょうか? 初心者なので、詳しいことは分かりませんが、いろいろ調べたところVBAを使わずにテーブルのみで作成できるそうなのですが、それさえも難しくて分かりません。 よろしくお願いいたします。

  • Accessでの宛名ラベルの印刷について

    Access2003で抽出した1件の住所録データを 宛名ラベル2列x6段のすべてに印刷させたいのですが 方法がよくわかりません。 教えていただけませんか。

  • 住所録を宛名ラベルにリンクさせたい

    ワードでの差し込み印刷はレイアウトを変えたら他のラベルまで変わったりしていちいち面倒くさいので使いたくありません。また、毎年住所録の異動があるので、その度に住所録と宛名印刷用のデータを書き換えるのも面倒です。 一人で毎回大量の文書発送や、その他諸々の仕事をしないといけないので出来ればデータ処理は早く済ませたいのです。 今後のことを考えて住所録入力だけでラベル自動変換できるのなら、式の入力に時間が少々かかっても構わないです。 住所録を入力するとそのまま宛名ラベルの方に移行できる方法がありましたら教えて下さい。(アクセスを使うと簡単みたいなんですが、職場のパソコンにはアクセスはありません。) 出来れば、関数かVBAなどで出来る方法がありましたらよろしくお願いします。 パソコンのことはあまり詳しくないので分かりやすく教えて頂ければ助かります。 どうか宜しくお願いします。

  • 宛名ラベルを印刷する方法

    こんばんわ。 おせわになります。 宛名ラベルを印刷する方法をご教示下さい。 データは、エクセルに5000件くらいあり、その中の任意の30人くらいの人の住所ラベルがつくりたいです。 また、ラベルは、A4用紙に印刷後、鋏で切って、B4封筒に貼り付けようと思っております。 元データは、顧客番号、郵便番号、住所、氏名、宛名です。 氏名と宛名は異なる場合があります。 どのように作るのが一番早く、簡単に作れるでしょうか。 ご経験のある方、ご教示下さい。 よろしくお願いいたします。

  • アクセスでの宛名ラベル作成

    お世話になります。 アクセス(WINXP アクセス2002)で住所録を作成しました。 クエリで抽出したデータを元に宛名ラベルを作りたいのですが、 ウィザードで作成されたラベルは1枚に複数レコードが入るラベルです。 1つのレコードで1枚の宛名ラベルを作成したいのですが・・・。 1枚の宛名ラベルに10枚ラベルシールがあるとしたら、10枚全て 同一のものを作成したいのです。 エクセルデータを元にワードの差込印刷だと出来るのですが・・・。 アクセスのみで行いたいので困っています。 宜しくお願いします。

  • Access2002で宛名印刷

    Access2002を使用しています。 テーブルに郵便番号マーク・郵便番号・住所・宛名が入力されていて、 レポートで市販のラベル用紙に印刷できるようなレイアウトで、 印刷されるように以前会社にいた人が作ってくれた宛名印刷ようアクセスデータ を利用しています。 しかし、例えば、10宛名分印刷できる用紙に、2宛名分だけ印刷したいとき 住所などが入らない残りの8宛名に、郵便番号マークだけ表示されてしまい。 用紙が無駄になってしまう状態になっています。 もったいないので、これを直したいと思うのですが、 どこを直せばいいでしょうか? レポートのデザインなのか?もしくは他のどこかなのか? インターネットで調べてみたのですが、いまいちよくわからず、 あまりアクセスに詳しくないので、詳しい方に聞いてみたいと思い 質問しました。 インターネットで調べるキーワードでも教えていただければと思います。 よろしくお願いします。 拡張子はmdbです。 Access2003 Acsess2007どちらも使えるパソコンがあります。

  • 宛名ラベルを作るために

    宛名ラベルを作るために エクセルワークシートに〒・住所・氏名を入力してもらい、 ワード2003の差し込み印刷で順を追って進めているのですが、 エクセルデータが出てきません。 初心者で全く解決方法がわかりません。 教えていただけないでしょうか。