2016-08-29 90 views
0

管理者権限を持っているかどうかを知る必要があるExcelマクロがあります。 マクロはシェルコマンドを実行していますが、ユーザーがExcelとして実行することを選択しなかった場合には失敗します。vbaで管理者特権を確認する方法

+4

どのような方法で、戻りブール値を利用します関数 'CheckTokenMembership'を呼び出します。以前は 'IsUserAnAdmin'と呼ばれていましたが、便利機能は廃止され、もうサポートされなくなりました。あなたはそれを長い道のりで行う必要があります。)とにかく、私は尋ねる必要があります。管理者権限がない場合エラーを処理するだけの方がいいかもしれません。 –

+0

@CodyGrayありがとうございました。私はちょうど管理者としてマクロを実行するようにユーザーに頼むでしょう。 –

答えて

0

アプリケーションを実行しているユーザーが管理者特権を持っているかどうかを判断するために使用されるMicrosoft関数があります。

まず、この関数が常駐ライブラリが含まれています。

Private Declare Function IsUserAnAdmin Lib "shell32"() As Long 

それからちょうどこれを行うための正しい方法は、APIを呼び出すことである関数を呼び出すと

if IsUserAnAdmin() then 
    //Ask user to run application as admin 
End if 
関連する問題