[[20061212190057]] 『VBAでの余白の設定について』(たか) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『VBAでの余白の設定について』(たか)

[エクセルのバージョン]
Excel2000
[OSのバージョン]
WindowsXP
[アクセスのバージョン]
Access2000

AccessからExcelのオブジェクトを作成してVBAで余白の設定をすると、

コンパイルエラー:
メソッドまたはデータメンバが見つかりません。

となってしまいます。
どうすればいいのでしょうか?

.HeaderMargin = Application.CentimetersToPoints(2)の、

CentimetersToPointsの部分が青く反転表示されています。

余白の設定の部分だけがエラーになり、余白の設定を全部
コメントアウトしてやるときちんと動きます。

よろしくお願いします。

以下ソース

    '印刷設定
    With Book.Sheets(1).PageSetup
        '印刷範囲
        .PrintArea = "$A1:$W$32"
        '用紙方向(横)
        .Orientation = xlLandscape
        '用紙サイズA4
        .PaperSize = xlPaperA4
        '印刷品質
        .PrintQuality = 600

        'ヘッダー・フッター余白
        .HeaderMargin = Application.CentimetersToPoints(2)
        .FooterMargin = Application.CentimetersToPoints(0.5)

        '上下左右余白
        .TopMargin = Application.CentimetersToPoints(2.5)
        .BottomMargin = Application.CentimetersToPoints(1)
        .LeftMargin = Application.CentimetersToPoints(1)
        .RightMargin = Application.CentimetersToPoints(1)

        '左側ヘッダー文字
        .LeftHeader = "XXXXX"

        'シートが高さ・幅ともに一ページに収まるようにする
        .Zoom = False
        .FitToPagesTall = 1
        .FitToPagesWide = 1
    End With


 こんにちは。
 コンパイルエラーになるのは
 CentimetersToPointsメソッドが
 アクセスで使えるメソッドではないからでしょう。

  > .HeaderMargin = Application.CentimetersToPoints(2)
 この場合のApplicationというのはAccess.Applicationのことですから、

 Set xlApp = CreateObject("Excel.Application")
 のようなことをして、エクセルを起動しているのでしたら、
 以下のような感じにすれば、よろしいかと思います。
 .HeaderMargin = xlApp.CentimetersToPoints(2)

 (MSE)


こんにちは。
おっしゃるとおりでした。
ApplicationをCreateObjectのオブジェクト名にしてできるように
なりました。
ありがとうございました!
(たか)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.