次の方法で共有

抽出dataをラベルに開始位置を指定印刷するには

Anonymous
2015-07-08T02:41:04+00:00

初めて投稿参加させていただきます。access2013でラベルの印刷をしたいのですが開始位置を指定するのはvbaで次のように指定しています。開始指定はこれでいいようですが、抽出してからだでは不明です。

開始位置のVBAは次のとおりです。

 Dim intSkip As Integer

 Dim intSkipNum As Integer

Private Sub Report_Open(Cancel As Integer)

End Sub

 Private Sub レポートヘッダー_Format(Cancel As Integer, FormatCount As Integer)

   If Len(Forms![F:ラベル任意指定]![テキスト1]) > 0 Then

        intSkipNum = Int(Forms![F:ラベル任意指定]![テキスト1]) - 1

    Else

        intSkipNum = 0

    End If

    intSkip = 0

 End Sub

 Private Sub 詳細_Format(Cancel As Integer, FormatCount As Integer)

    If intSkip < intSkipNum Then

        MoveLayout = True

        NextRecord = False

        PrintSection = False

        intSkip = intSkip + 1

    End If

 End Sub

と作成しています。やりたいのは DATAを検索抽出してその値をラベルに指定の位置から印刷したいのですが。素人ながらあれこれ試しましたがうまく出来ません、ご指導おねがいします。

Microsoft 365 と Office | アクセス | 家庭向け | Windows

ロックされた質問。 この質問は、Microsoft サポート コミュニティから移行されました。 役に立つかどうかに投票することはできますが、コメントの追加、質問への返信やフォローはできません。

0 件のコメント コメントはありません

質問作成者が受け入れた回答

Anonymous
2015-07-09T00:22:01+00:00

早々のご丁寧なご回答ありがとうございました。私の 「DATAを検索抽出」としてクエリーで名前、住所等を検索して結果をラベルレポートにしてその後は宛名ラベル指定をVBAで作成したもので、検索したDATAが印刷されず全てのDATAが表示されます。

印刷位置指定のVBAが原因で、抽出が解除されて全件表示になるということはありえないので、

そのクエリの設計が問題ということです。

VBAを削除しても、全件表示になるのではないですか。

だとしたら、印刷位置指定は後回しにして、希望の抽出結果になるようにクエリを設計しなおすということを先にしましょう。

これができれば、あとは、VBAを使用するなり、VBAを使わずにする方法なり、ご希望の方を採用すればいいでしょう。

この回答は役に立ちましたか?

0 件のコメント コメントはありません

6 件の追加の回答

並べ替え方法: 最も役に立つ
  1. Anonymous
    2015-07-08T05:38:51+00:00

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  2. Anonymous
    2015-07-08T05:06:53+00:00

    Microsoftサポートの下記のページで紹介されてる方法の応用ですね。

    ラベル印刷で開始位置を指定して印刷する方法

    開始位置の指定を InputBox からフォーム上のテキストボックスに変更しただけです。

    「**DATAを検索抽出」**をどのようにしているのか不明ですが、

    レコードソースのクエリで抽出条件を設定するか、開くときのマクロかVBAで抽出条件の引数を設定するかだと思いますが、どちらにしても提示のコードで問題ないと思いますが。

    実際に試してみて、うまくいきませんか。

    どのように抽出していて、どのようにうまくいかないのか、詳細を説明していただけますか。

    VBAを使わずにする方法は下記で紹介していますので、

    どうしてもうまくいかない場合は、参照してみてください。

    宛名ラベルを指定位置から指定枚数 印刷する方法

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  3. Anonymous
    2015-07-08T04:53:55+00:00

    初めてコミュニティ利用早速のご回答ありがとうございました。大変嬉しく思いました。ご指導の通りメンテも考え、UNION SQL等で作成してみようと思います。SIMOZ様本当にありがとうございました。これからも宜しくお願い申しあげます。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  4. Anonymous
    2015-07-08T03:02:25+00:00

    こんにちは

    ラベルが分割レポートのため、その印字場所をコントロールして、前回途中まで使ったラベル用紙を使い切りたい ということですね?

    プログラムで難しくするより、指定した件数のダミーデータが先頭にくるようにデータを追加してはいかがですか?

    UNION SQLでデータを追加するとか、印刷用データを一度作業用テーブルに入れて、そこから印刷するなどで対応できると思います。

    プログラムでコントロールするほうが難しく、メンテしづらくなると思いますよ。

    いかがでしょう?

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません