Microsoft Access Club >Access裏技Tips >このページ >次頁 < 前項 サイト内検索


Accessバージョンを確認しmdeファイルを作成する : Access裏技Tips



AccessのVBAコードを第三者に見られないようにするには、mde形式のファイルを作成します。 ここでは、Accessバージョンを調べてmdeファイルを作成する技を紹介します。

Accessバージョンの確認とmdeファイルの作成

  1. プロシージャの実行は、フォーム上のコマンドボタンから行います。
  2. メインフォーム(frm_sample)を作成し、コマンドボタンを配置(Cmdコマンド)します。コマンドボタンのクリック時イベントを利用して、Functionプロシージャ AccessVersion を実行します。
  3. AccessバージョンとAccessファイル形式が、mdeファイル作成に適していると、SendKeysステートメントからmdeファイル作成のショートカットキーを呼び出し実行します。

Functionプロシージャ AccessVersion の作成

Functionプロシージャ AccessVersion を作成します。

Function ShowMDE()
  
    SendKeys "%TDM" ' --- A

End Function
解説
  1. SendKeysステートメントを用いて「MDEファイルの作成」のショートカットキィーを呼び出します。
今回のおすすめポイント

SendKeysステートメント

SendKeysステートメントを用いて、メニューバーのショートカットキーを呼び出すことができます。これはとても便利な機能ですが、ショートカットキーは、Accessの状態によって異なりますから注意が必要です。例えば、"MDEファイルの作成"のショートカットキィー("%TDM")は、データベースウィンドウが前面に表示されていることが前提条件となります。

Functionプロシージャ AccessVersion の作成

Functionプロシージャ AccessVersion を作成します。

Function AccessVersion()

    Dim Returnvalue As Variant
    Dim strVer As String
    Dim strFormat As String
    Dim strMsg_1 As String
    Dim strMsg_2 As String
    
    Returnvalue = SysCmd(acSysCmdAccessVer) ' --- A
   
    Select Case Returnvalue
        Case 8
            strVer = "Access 97"
        Case 9
            strVer = "Access 2000"
        Case 10
            strVer = "Access 2002"
        Case 11
            strVer = "Access 2003"
    End Select
   
    Select Case CurrentProject.FileFormat ' --- B
        Case acFileFormatAccess97
            strFormat = "Access 97"
        Case acFileFormatAccess2000
            strFormat = "Access 2000"
        Case acFileFormatAccess2002
            strFormat = "Access 2002-2003"
    End Select
    
    strMsg_1 = "・このファイルは、" & strFormat & " 形式です。" & vbNewLine & _
               "・Accessバージョンは、" & strVer & " です。" & vbNewLine & _
               "よって、MDEファイルを作成できます。作成しますか?"
               
    strMsg_2 = "・このファイルは、" & strFormat & " 形式です。" & vbNewLine & _
               "・Accessバージョンは、" & strVer & " です。" & vbNewLine & _
               "残念ながら、異なる場合はMDEファイルを作成できません。"
    
    If strVer = strFormat Then
        If 1 = MsgBox(strMsg_1, 17) Then Call ShowMDE ' --- C
    ElseIf strVer = "Access 2002" And strFormat = "Access 2002-2003" Then
        If 1 = MsgBox(strMsg_1, 17) Then Call ShowMDE
    ElseIf strVer = "Access 2003" And strFormat = "Access 2002-2003" Then
        If 1 = MsgBox(strMsg_1, 17) Then Call ShowMDE
    Else
        MsgBox strMsg_2, 48
    End If

End Function
解説
  1. SysCmdメソッドを用いて、Accessバージョンを求めます。Access2003は11.0、Access2002は10.0、Access2000は9.0,Access97は8.0の値を返します。
  2. CurrentProjectプロパティとFileFormatプロパティを用いて、Accessのファイル形式を求めます。
  3. Functionプロシージャ ShowMDE を呼び出します。

メインフォームの作成

  1. 非連結のメインフォームを作成します。
  2. コマンドボタンを作成します。

コマンドボタンクリック時イベントプロシージャの作成

コマンドボタンクリック時イベントプロシージャを作成します。

Private Sub Cmdコマンド_Click()

    Call AccessVersion ' --- A

End Sub
解説
  1. FunctionプロシージャAccessVersionを呼び出します。

動作確認

  1. デザインビューからフォームビューに切り替えます。

  1. コマンドボタンをクリックし、確認メッセージの[OK]をクリックします。

  1. MDEファイルの作成画面が開きますので、手順に沿って進めます。

関連ページ

ページの先頭へ 前ページへ戻る

 


Accessバージョンを確認しmdeファイルを作成する : Access裏技Tips


 

-Microsoft Access Club-

アメリカ合衆国の大手データセンターのアダルト対応可能なリーズナブル価格設定の専用・共有レンタルサーバーをご提供しています。
アメリカ合衆国の大手データセンターにサーバー機器を設置。
アダルト対応可能な専用・共有レンタルサーバーを提供。