IT家・挑戦雑記

情報を制する者は世界を制す!

エクセルファイルをPDF化する際、
別シートを含めるPDF化がうまくいかないトラブルの解決方法

━━━━━━━━━━━━━━━━━━━━━━━━━
★状況
 ・エクセルデータを、別シートを含む(もしくはブック全体)PDF化
 ・シート毎にPDF化されてしまう

★環境
 ・WindowsXP SP3
 ・MS Excel 2003
 ・AISOFT pdMaker

★原因
 ・シート毎、ページ設定の印刷品質(dpi)が異なるため

★解決
 ・対象となるシートの印刷品質(dpi)を統一する
 ※この設定は、印刷がプリンタではなくPDFに設定されていて変更可能な項目

★やりたい事
 Accessで、リンクテーブルの参照先をVBAを用いて変更する。

★環境
 ・WindowsXP SP3
 ・Access2003

★リンクテーブルを変更するための関数
 ※以下の赤の太文字を環境に応じて変更して下さい。

━━━━━━━━━━━━━━━━━━━━━━━━━
Public Function ch_tbl_link()

  '★参照ライブラリ ・・・ 以下を参照しないと動作しません。
    '・Microsoft DAO 3.6 Object Library

  '-------------------------------------------------------------------
  '★変数宣言
    Dim tdf As TableDef
    Dim dbs As Database

  '-------------------------------------------------------------------
  '★オブジェクトセット
    Set dbs = CurrentDb
    Set tdf = dbs.TableDefs("リンクテーブル名")

  '-------------------------------------------------------------------
  '★メイン処理

    'プロパティ値の変更
    With tdf
      .Connect = ";DATABASE=D:リンク先のMDB.mdb;TABLE=リンクテーブル名"
      .RefreshLink
    End With

    '終了メッセージ
    MsgBox "リンクテーブルの変更が完了しました。"

    'オブジェクトの破棄
    Set tdf = Nothing
    dbs.Close: Set dbs = Nothing

End Function
━━━━━━━━━━━━━━━━━━━━━━━━━