|
▼YUKI さん:
こんにちは。
> DoCmd.PrintOut ←印刷ポート先をPDFに設定してます。
どの様なソフトを使ってPDF化しているのかにもよりますが
そのソフトの仕様によっては実現できない事もありえますね。
Microsoftの肩を持つ訳ではありませんが
Access2007を使用すると
以下のアドインでPDF出力が可能です。
h tp://www.microsoft.com/downloads/details.aspx?FamilyID=4d951911-3e7e-4ae6-b059-a2e79ed87041&DisplayLang=ja
Access2003という条件を変えずに
無償にてPDF化を行いたい場合は
ReportToPDF : Access のレポートを PDF に変換する機能
h tp://cs.albis.jp/blogs/ms-18e/archive/2007/06/30/5901.aspx
の様なツールもある模様ですが
当方は使用した事がない為
YUKI さんが行いたい事ができるかどうか
正直解りかねます。
(できそうだな、というWeb記事はあったのですが未検証です)
>
> Do Until rs.EOF
> On Error Resume Next
> cn.Execute "drop Table 印刷テーブル"
> sql = ""
> sql = sql & "select * into 印刷テーブル from マスタ "
> sql = sql & "where 品番 = '" & rs("品番") & "'"
> cn.Execute sql
> DoCmd.SelectObject acReport, "マスタ", True
> rs.MoveNext
> Loop
>
毎回テーブルを破棄→作成の流れは
あまり良い仕様ではないかと思われます。
品番ごとのレポートを出力したいのであれば
印刷テーブルを基にクエリを作って使いまわすか
Do Until rs.EOF
DoCmd.OpenReport "レポート名", _
WhereCondition:="品番 = '" & rs("品番") & "'"
rs.MoveNext
Loop
の様にOpenReport メソッドを使って、
WhereConditionを変化させながら出力するか
いずれかの方法で実現できそうですね。
|
|