マクロを使用してcomアドイン関数を実行しますか?


0

システムで分析を実行するために使用するcomアドインがあります。AddInブロックにはリストされていませんが、comAddInsにロードされています。VBAを介してアドインの機能を実行する方法はありますか?Excel 2010を使用する

お時間をいただきありがとうございます!!


これが役立つかもしれません。 1つのソリューションでExcel VBAマクロとCOMアドインを使用する方法。「この記事では、VBAルーチン内からExcelアドインオブジェクトと関数にアクセスする方法と、Excel COMアドイン内からVBA関数にアクセスする方法について説明します。」
バンダースナッチ

また、Chip Pearsonのこのリファレンス記事も役立ちます。「VBAでのオートメーション機能の使用:最初のステップは、オートメーションアドインへの参照を確立することです。」
アントワーヌ

回答:


0

はい、VBAを介してアドインを実行できます。ただし、COMアドインの回復に役立つ簡単な手順をいくつか提案したいと思います。

  • そうでない場合は、Excelをロードします。
  • [ファイル]コマンドをクリックし、[オプション]をクリックします。
  • メニューからアドインを見つけます。
  • [管理]の左下をチェックし、[無効なアイテム]を選択して[実行]をクリックします。
  • ポップアップウィンドウからアドインを見つけて選択し、[有効にする]をクリックします。

または

  • [管理]ボタンをクリックし、リストから[COMアドイン]を選択して[OK]をクリックします。
  • COMアドインポップアップウィンドウからアドインを見つけて選択し、[OK]で終了します。
  • 最後にExcelを再起動します。

編集部分:

OPがVBAコードからサードパーティアドインを実行する必要があるため、OPの需要に応じてこの部分を誘導しました。

Private Declare Function XLLFunction Lib "C:\PathTo3rdPartyDLL\3rdParty.xll" (ByVal A as Integer, ByVal B as String, C as Double) As Double

Sub Function ThirdPartADDInRUN(A as Integer, B as String, C as Double) as Double
    ThirdPartADDInRUN = XLLFunction(A, B, C)
End Sub

注意:ファイルパスとアドイン名をシステムドライブとまったく同じように指定してください。


なぜ反対票を投じたのかわからない...これはあいまいな質問に対する良い解決策です。
jrichall

@jrichallありがとう、答えを支持してくれました。良い時間を過ごす。
ラジェシュS

こんにちは、ご回答ありがとうございます。あいまいな質問でごめんなさい。アドインは既に実行されており、無効化されていません。私はVBA経由でそのアドインから関数を呼び出そうとしています。アドインにより、シートの上部にタブが表示されます。そのタブをクリックして、そのタブリボンからコマンドを実行できます。VBA呼び出しからそのリボンコマンドを実行したいです。
DButler

@DButler、これは大混乱を引き起こしました。「AddInブロックにはリストされていませんが、comAddInsにロードされています」。また、既に試した場合はVBAコードをアップロードしてください。間違いの修正にご協力ください。
ラジェシュS

OK、説明しよう。options-AddInsに移動してCOMAddinsドロップダウンを選択すると、AddInがそこにあり、チェックされていることがわかります。Excelシートにタブを配置します。パラメトリックスタディを実行する場合、タブをクリックし、そのタブリボンから[スタディの実行]コマンドをクリックします。したがって、アドインが存在し機能しているという点ですべてが良好です。VBAで「Run Study」コマンドを呼び出す方法についてのヘルプが必要です。現在、VBAコードはありません。私はVBAを初めて使用しますが、VBAを機能させるには、実際にVBAをいじる必要があります。VBAでサードパーティのアドインコマンドを呼び出す方法がわかりません。
-DButler
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.