Hitachi

DBPARTNER2 Client 操作ガイド


4.3.1 貼付オプション機能

Excel連携では抽出データの利用方法が決まっている場合,利用方法に合わせてデータの抽出形式を設定できます。貼り付ける場所をあらかじめ設定しておきたい場合は,[DBPARTNER2]−[貼付オプション]メニューをチェックしておきます。これで,貼付オプション機能が有効になります。簡単に貼り付け位置を設定したいときは[貼付オプション]ダイアログボックスを使うと便利です。特に定型業務などで,抽出時に使う手順ファイルや,データを貼り付けるシート名まで設定したいときは,貼付オプションパラメタを使うと便利です。

〈この項の構成〉

(1) [貼付オプション]ダイアログボックスを使った抽出

[貼付オプション]ダイアログボックスは,DBPARTNER2から抽出するときはデータを貼り付ける直前に,Excelの[DBPARTNER2]メニューから抽出するときは[DBPARTNER2]−[抽出]を選択したときに表示されます。

[貼付オプション]ダイアログボックスについて説明します。

[図データ]

[新規ブック]チェックボタン

抽出結果を新規ブックに貼り付ける場合に使用します。

[既存シート]チェックボタン

抽出結果を既存のシートに貼り付ける場合に使用します。既存のシートとは,[抽出]メニューを押したときに表示されているシートです。

[データ貼付位置:]テキストボックス

抽出結果を貼り付けるときの貼り付け位置を指定します。

[シートの書式を引き継ぐ]チェックボックス

抽出結果を貼り付ける場合,シートの書式設定を有効にしたいときに使用します。[既存シート]チェックボタンにチェックしている場合だけ有効です。

[列名を貼り付けない]チェックボックス

抽出結果を貼り付ける場合,列名が不要なときに使用します。

[シート名変更:]テキストボックス

抽出結果を貼り付けたシートの名称を任意の名称に変更したい場合に指定します。

注意
  • 指定したデータの貼り付け位置を基点として抽出結果を貼り付けた場合,Excelシートの制限を超えるときはDBPARTNER2のエラーとなります。Excelシートの制限は使用するExcelのバージョンで異なります。

    例えば,貼り付け位置にIV1を指定した場合,エラーとなり,貼り付けることはできません。

  • シート名の変更で,既存のシート名称を指定した場合には,Excelがシート名称を重複しない名称に変更します。どのような名称になるかは,使用するExcelのバージョンによって異なります。

(2) 貼付オプションパラメタを使った抽出

貼付オプションパラメタは,[貼付オプション]ダイアログボックスで設定する情報をExcelシートに記述しておくための機能です。

貼付オプションパラメタを記述したシートを開いて,Excel連携での抽出を実行すると,常に一定条件でデータベースからデータを抽出できます。

(a) 操作

  1. Excelを起動します。

  2. [DBPARTNER2]−[貼付オプション(P)]にチェックします。

    パラメタを有効にするために必要です。

  3. パラメタシートを作成します。

    パラメタシート名は,必ず「DBP2ParameterSheet」にしてください。

    パラメタシートのパラメタについては「(b)パラメタの詳細」,設定の規則については「(c) 規則」を参照してください。

    [図データ]

  4. パラメタシート以外のシートをアクティブにします。

  5. [DBPARTNER2]−[抽出]を選択します。

    DBPARTNER2が起動して,抽出結果が指定位置に貼り付きます。

(b) パラメタの詳細

パラメタシートで設定できるパラメタと,その内容について表4-6に示します。

表4‒6  設定できるパラメタとその内容

パラメタ名

内容

CatalogFileName

実行する手順ファイル名を指定します。省略時には,手順ファイルなしで実行します。ファイル名は完全パスで指定してください。

KeepFormat

シートに設定された書式を引き継ぐかどうかを設定します。省略時にはOFFが仮定されます。

ON :シートに設定された書式を引き継ぎます。

OFF :シートに設定された書式を引き継ぎません。

ColumnName

抽出結果に列名を貼り付けるかどうかを設定します。省略時にはONが仮定されます。

ON :抽出結果に列名を貼り付けます。

OFF :抽出結果に列名を貼り付けません。

Position

抽出結果を貼り付ける開始位置を指定します。省略時には,[抽出]メニューを選択したときのアクティブセルの位置となります。

PasteSheetName

抽出結果を貼り付けるシートの名称を指定します。省略時には[抽出]メニューを選択したときのアクティブシートの名称となります。

SheetName

抽出結果を貼り付けたシートを任意の名称に変更したい場合に指定します。省略時には,[抽出]メニューを選択したときのアクティブシートの名称となります。

アクティブシート以外の既存のシート名を指定した場合は,エラーとなりシート名は変更されません。データはアクティブシートに貼り付きます。

QueryEnd

抽出完了後に呼び出すマクロ名を指定します。マクロは一つの引数を持つマクロを指定してください。マクロの作成例を次に示します。

  Sub QueryEndSam (Rc As Integer)
 
  End Sub

Rc As Integerは引数です。抽出が正常に終了したときはRcに0が返されます。正常に終了しなかったときはRcに-1が返されます。

注※

QueryEndで呼び出すマクロはアドイン(ファイル名:xxxx.xla)として登録しておく必要があります。

(c) 規則

  • Anセルにパラメタ,Bnセルに値を設定します。

  • パラメタは,シートの先頭セル(A1セル)から順に設定してください。

  • 複数のパラメタを設定する場合は,行を空けないで設定してください。空白の行があると,それまでの行を有効とし,空白行以降の行の設定は無効となります。

  • 大文字/小文字は同一の文字として扱います。

  • パラメタの指定順序は任意です。

  • 同じパラメタを複数指定した場合は,最後のパラメタが有効となります。

  • パラメタとして不正な文字列を設定してもエラーとなりません。

  • パラメタの値を省略した場合や,範囲外の値を設定した場合は,省略値が仮定されます。

(d) Excelからの自動抽出

データベースからの抽出を自動化したいときは,ExcelのAuto_Openプロシジャと貼り付けオプションパラメタを組み合わせます。Auto_Openプロシジャに次の斜体部分を追加してください。

  • Excel 2007,Excel 2010の場合

    Sub Auto_Open() 
    Application.Run Macro:= "dbp2exl2007.xlam!V2MenuRTVEXL"
    End Sub
  • Excel 2013,Excel 2016の場合

    Sub Auto_Open() 
    Application.Run Macro:= "dbp2exl2013.xlam!V2MenuRTVEXL"
    End Sub

Excelのブックを開くだけで手順ファイルが実行され,データベースからのデータが指定したシート位置に貼り付きます。

使用例

DBPARTNER2から抽出したデータをExcelで作成した帳票に貼り付けます。

  • 準備

  1. 帳票形式を作成します。

    ここでは"Sheet1"に作成します。

    [図データ]

  2. 帳票を作成したシートと同じブック内に貼付オプションパラメタシート,Auto_Openプロシジャと,抽出後に呼び出すマクロ"QueryEndSam"を作成しておきます。

    [図データ]

  3. 作成したブックに名前を付けて保存します。

    Book1という名前を付けました。

  • 実行

    保存したブックを開くと次の流れで帳票が完成します。

  1. DBPARTNER2が起動されます。

  2. パラメタシートに指定した手順ファイルに従って,抽出データがデータベースから呼び出されます。

  3. パラメタシートに指定したシート"Sheet1"の指定位置"B3"に,抽出データが貼り付けられます。

  4. パラメタシートに指定したマクロ"QueryEndSam"によって,帳票の"金額","合計"が算出され,[抽出完了]のメッセージボックスが表示されました。

これで帳票"仕入票"が完成しました。

[図データ]