本文へスキップ

別館:エクセルQC館 別館:エクセル株式館

  1. トップページ>
  2. Tips>
  3. Excel2010、VBAでアクセスマクロ起動した時に見えない原因

Tipstips

備忘録として、主にパソコン関係のTipsを記載して行きます。


新着情報
@UiPath、メモ
AOffice365、Excel:VBAで画面更新がチラツク時の対策
BOffice365、Excel:勝手に手動計算になる原因
COffice365、Excel:フィルターで3つ以上の条件にする方法
DOffice365、Excel:シート同士の違いを見つける方法

Excel2010、VBAでアクセスマクロ起動した時に見えない原因

Excel2010は、手頃な価格で高機能な表計算ソフトです。
ファイル(ブック)には複数のシートを作成できて、色々な表やグラフを作れます。

しかし、Excel2010でVBAにてアクセスマクロ起動した時に、起動したアクセスファイルが見えない
現象が発生しました。使用したパソコンは、下記のソフトを使用していました。

OS       : Windows10(64bit)バージョン1909(OSビルド 18363.592)
表計算ソフト   : Excel2010(32bit)

以下、Excel2010、VBAでアクセスマクロ起動した時に見えない原因を記載して行きます。

(項目1)
 ・Excel2010でVBAにてアクセスマクロ起動した時に、起動したアクセスファイルが見えない現象
  が発生しました。
 ・VBAコードは、以下の通りです。

  Sub test03()

    '変数宣言
    Dim OpenDirName As String
    Dim OpenFileName As String
    Dim acApp As Object

    '変数設定
    OpenDirName = ThisWorkbook.Path
    OpenFileName = Range("C9")

    'ファイルを開く
    Set acApp = CreateObject("Access.Application")
    acApp.OpenCurrentDatabase OpenDirName & "\" & OpenFileName
    acApp.Visible = True
    Call appShowWindow(acApp.hWndAccessApp)

    'アクセスのマクロを実行する
    acApp.Run "test"

    'ファイルを閉じる
    acApp.CloseCurrentDatabase
    Set acApp = Nothing ' オブジェクト開放

  End Sub

(項目2)
 ・インターネットで色々と調査すると、「三流君VBA:ExcelからAccessのモジュールを呼んで
  みました
」が見つかりました。
 ・上記によると、「objACCESS.UserControl = True 'その後、ユーザーに操作させる」が必要との事。

(項目3)
 ・VBAコードに、「acApp.UserControl = True」を追加しました。

  Sub test03()

    '変数宣言
    Dim OpenDirName As String
    Dim OpenFileName As String
    Dim acApp As Object

    '変数設定
    OpenDirName = ThisWorkbook.Path
    OpenFileName = Range("C9")

    'ファイルを開く
    Set acApp = CreateObject("Access.Application")
    acApp.OpenCurrentDatabase OpenDirName & "\" & OpenFileName
    acApp.Visible = True
    Call appShowWindow(acApp.hWndAccessApp)

    'アクセスのマクロを実行する
    acApp.Run "test"

    'その後、ユーザーに操作させる
    acApp.UserControl = True

    'ファイルを閉じる
    acApp.CloseCurrentDatabase
    Set acApp = Nothing ' オブジェクト開放

  End Sub

(項目4)
 ・すると、起動したアクセスファイルが見える様になりました。

(項目5)
 ・以上で、Excel2010、VBAでアクセスマクロ起動した時に見えない原因は終了です。



contents

エクセル将棋館

日本国

地方都市


スポンサード リンク