MS Access VBAエラー:実行時エラー「70」のアクセス許可が拒否されました

ジェイソン

この問題は、MS Office / AccessまたはWindows10の最近の更新の結果であると思います。このコードを実行すると、次のようになります。

Dim s As String
With CreateObject("Scriptlet.TypeLib")
    s = Left(.Guid, 9)
   newguidx = Right(s, 8)
End With

エラーが発生します:Withステートメントでアクセスが拒否されました。これは、管理者がシステムを更新した後にのみ切り取られた新しいものです。更新をロールバックするオプションがありません。誰かがこれに出くわし、回避策がありますか?

OS:Windows 7 Enterprise Accessバージョン:2010

ありがとう

デビッドゼメンス

マイクロソフトから

この問題は、7月のセキュリティ更新時点での仕様によるものです。このコントロールは、悪意のあるコードがOfficeアプリケーションで実行されるのを防ぐためのセキュリティ対策としてブロックされています。推奨される方法でナレッジベースの記事を公開するよう取り組んでいます。そのKBの準備ができるまで、ここにコンテンツを投稿します。

回避策推奨される方法は、代わりにWindows API CoCreateGuid(https://msdn.microsoft.com/en-us/library/windows/desktop/ms688568v = vs.85.aspx を使用するようにコードを変更することです。CreateObject("Scriptlet.TypeLib").Guid

' No VT_GUID available so must declare type GUID
Private Type GUID_TYPE
    Data1 As Long
    Data2 As Integer
    Data3 As Integer
    Data4(7) As Byte
End Type
Private Declare PtrSafe Function CoCreateGuid Lib "ole32.dll" (Guid As GUID_TYPE) As LongPtr
Private Declare PtrSafe Function StringFromGUID2 Lib "ole32.dll" (Guid As GUID_TYPE, ByVal lpStrGuid As LongPtr, ByVal cbMax As Long) As LongPtr
Function CreateGuidString()
    Dim guid As GUID_TYPE
    Dim strGuid As String
    Dim retValue As LongPtr
    Const guidLength As Long = 39 'registry GUID format with null terminator {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}

    retValue = CoCreateGuid(guid)
    If retValue = 0 Then
        strGuid = String$(guidLength, vbNullChar)
        retValue = StringFromGUID2(guid, StrPtr(strGuid), guidLength)
        If retValue = guidLength Then
            ' valid GUID as a string
            CreateGuidString = strGuid
        End If
    End if
End Function

別の回避策

これにより使用できるようになりますがCreateObject("Scriptlet.TypeLib")、Office 2017年7月のセキュリティ更新プログラムによって追加されたセキュリティ保護が弱まります。Scriptlet.TypeLibOfficeアプリケーション内でインスタンス化できるようするレジストリキーを設定できます。このレジストリキーが設定されている場合、OfficeはこのCOMコントロールの使用をブロックしません。

  • レジストリエディタを開きます。
  • 次の場所に移動します:Computer \ HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Office \ 16.0 \ Common \ COM Compliance {06290BD5-48AA-11D2-8432-006008C3FBFC}
    • 注:インストールされているOfficeのバージョンに基づいて、HKEY_LOCAL_MACHINEの下の正しい場所を見つけるために、レジストリを検索する必要がある場合があります。
  • ActivationFilterOverrideを追加します
  • DWORDを設定:1

詳細な手順:

  1. [スタート]、[ファイル名を指定して実行]の順にクリックし、[名前]ボックスにregeditと入力して、[OK]をクリックします。レジストリで次のキーを見つけてクリックします:HKEY_LOCAL_MACHINE
  2. [編集]メニューの[検索]をポイントし、[検索対象:]テキストボックスに次のように入力します。COMの互換性
  3. キーが選択され、値とデータが選択解除されていることを確認します。次に、[文字列全体にのみ一致]を選択し、[次を検索]をクリックして、次のキーをクリックします。{06290BD5-48AA-11D2-8432-006008C3FBFC}注:キーが存在しない場合は、追加する必要があります。[編集]メニューの[新規]をポイントし、[キー]をクリックします。{06290BD5-48AA-11D2-8432-006008C3FBFC}と入力します
  4. [編集]メニューの[新規]をポイントし、[DWORD(32ビット)値]をクリックします。
  5. DWORDの名前としてActivationFilterOverrideと入力し、Enterキーを押します。
  6. ActivationFilterOverrideを右クリックし、[変更]をクリックします。
  7. [値のデータ]ボックスに1と入力してレジストリエントリを有効にし、[OK]をクリックします。
  8. ActivationFilterOverride設定を無効にし、0(ゼロ)を入力して、[OK]をクリックすることに注意してください。
  9. レジストリエディタを終了し、開いているOfficeアプリケーションを再起動します。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

MS-Access2007クエリの実行時エラー

分類Dev

MS Access:クエリ

分類Dev

MS Access 2013:ネストされたIIF構文エラー

分類Dev

MS Access VBA 実行クエリ

分類Dev

MS Access Link Table With VBA

分類Dev

ヘッダー付きの複数列リストボックスの作成-実行時エラー「70」のアクセス許可が拒否されました

分類Dev

MS Access の代替 CAST

分類Dev

ms access-vba:コンパイルエラー:予期される:=

分類Dev

Excel VBA で MS Access クエリを実行しようとしたときにエラー「オブジェクトが必要です」

分類Dev

実行時エラー70アクセス許可がExcelVBAを拒否しました

分類Dev

MS Access VBA SQLクエリは実行されますが、挿入されません

分類Dev

エラー:Ms Access VBAコードの2147217900(80040e14)

分類Dev

MS Access vba、パラメータを使用して選択クエリを開く、ランタイム3065は選択クエリを実行できません

分類Dev

MS Access vba、パラメータを使用して選択クエリを開く、ランタイム3065は選択クエリを実行できません

分類Dev

MS Accessクエリによって返される制限ですが、クエリまたはテーブルのすべての行を計算します

分類Dev

MS Access2007エンドユーザーアクセス

分類Dev

MS Access VBA:内部結合での構文エラー

分類Dev

MS Access VBA:内部結合での構文エラー

分類Dev

MS Accessクエリの構文エラー?

分類Dev

ms Graph api(beta)アクセスが拒否されました

分類Dev

Using previous entry to calculate MS Access vba

分類Dev

CSV array manipulation transpose in ms access vba

分類Dev

MS ACCESS VBA ORDER BY CASEいつ

分類Dev

UWP-OneDriveファイルのダウンロードエラー:MS Graphチームのサンプルコードを使用すると、「パス '…'へのアクセスが拒否されました」

分類Dev

VBA (Ms-Access) 2013 オーバーフロー エラー

分類Dev

MS Access EndTimeAfterUpdateマクロ

分類Dev

計算を行うために2つのフィールドが等しくなければならないインベントリSQLクエリのあいまいさエラーを取得します。MS-ACCESS

分類Dev

MS Access VBXML解析の問題

分類Dev

MS Access の親子関係

Related 関連記事

  1. 1

    MS-Access2007クエリの実行時エラー

  2. 2

    MS Access:クエリ

  3. 3

    MS Access 2013:ネストされたIIF構文エラー

  4. 4

    MS Access VBA 実行クエリ

  5. 5

    MS Access Link Table With VBA

  6. 6

    ヘッダー付きの複数列リストボックスの作成-実行時エラー「70」のアクセス許可が拒否されました

  7. 7

    MS Access の代替 CAST

  8. 8

    ms access-vba:コンパイルエラー:予期される:=

  9. 9

    Excel VBA で MS Access クエリを実行しようとしたときにエラー「オブジェクトが必要です」

  10. 10

    実行時エラー70アクセス許可がExcelVBAを拒否しました

  11. 11

    MS Access VBA SQLクエリは実行されますが、挿入されません

  12. 12

    エラー:Ms Access VBAコードの2147217900(80040e14)

  13. 13

    MS Access vba、パラメータを使用して選択クエリを開く、ランタイム3065は選択クエリを実行できません

  14. 14

    MS Access vba、パラメータを使用して選択クエリを開く、ランタイム3065は選択クエリを実行できません

  15. 15

    MS Accessクエリによって返される制限ですが、クエリまたはテーブルのすべての行を計算します

  16. 16

    MS Access2007エンドユーザーアクセス

  17. 17

    MS Access VBA:内部結合での構文エラー

  18. 18

    MS Access VBA:内部結合での構文エラー

  19. 19

    MS Accessクエリの構文エラー?

  20. 20

    ms Graph api(beta)アクセスが拒否されました

  21. 21

    Using previous entry to calculate MS Access vba

  22. 22

    CSV array manipulation transpose in ms access vba

  23. 23

    MS ACCESS VBA ORDER BY CASEいつ

  24. 24

    UWP-OneDriveファイルのダウンロードエラー:MS Graphチームのサンプルコードを使用すると、「パス '…'へのアクセスが拒否されました」

  25. 25

    VBA (Ms-Access) 2013 オーバーフロー エラー

  26. 26

    MS Access EndTimeAfterUpdateマクロ

  27. 27

    計算を行うために2つのフィールドが等しくなければならないインベントリSQLクエリのあいまいさエラーを取得します。MS-ACCESS

  28. 28

    MS Access VBXML解析の問題

  29. 29

    MS Access の親子関係

ホットタグ

アーカイブ