2017-06-23 5 views
0

VBAでExcelの既定のアドインのいずれかを有効にしようとしていますが、メソッドの代わりにブール値を入力しているようです。私が見つけたすべての情報は、ソルバーアドインを有効にする必要があることを示しています。VBAを使用してアドインを有効にするにはどうすればよいですか?

AddIns("Solver Add-in").Installed = True 

しかし、そうではありません。代わりに、「コンパイルエラー:無効な外部プロシージャ」を返します。

ワークシートが開いたときにソルバーアドインを有効にするにはどうすればよいですか?

編集:私はサブルーチン内のメソッドを配置する必要があるため

私はこのコードを実行していますよ。問題は、 "コンパイルエラー:プロジェクトまたはライブラリが見つかりません"を返すことです。

Option Base 1 
Sub TurnOnSolver() 
AddIns("Solver Add-in").Installed = True 
End Sub 

TurnOnSolver 

Function cubic_spline(input_column As Range, _ 
        output_column As Range, _ 
        x As Range) 

' The function does stuff that requires Solver Add-in. 

End Function 
+0

このコードはどこにありますか?実行可能な文は、SubまたはFunctionでなければなりません。 –

+0

無効な手続きは無効です。あなたのコードを表示する&あなたはそれをどこに置くのですか? – Absinthe

+0

Excelがカスタム関数の実装を開始する前に実行しようとしています。私はその行を含むサブルーチンを作ることができますが、Excelがカスタム関数を読み込もうとする前にそのサブルーチンを実行する必要があります。 –

答えて

0

サブブロックまたは関数外のメソッドを呼び出すことはできません。コードブロック内にある必要があります。

私はworkbook open eventに電話をかけることをお勧めします。ダブルプロジェクトエクスプローラでワークブックオブジェクトをクリックして、このコードを貼り付け:あなたが持っている場合

Private Sub Workbook_Open() 
    AddIns("Solver Add-in").Installed = True 
End Sub 

また、メインサブはそこにそれを置きます。最後の手段として、あなたのcubic_spline関数に入れることができますが、おそらくそれは非常に頻繁に呼ばれるので、私はそれに対して助言したいと思います。

+0

私はそれを試み、それは動作しませんでした。 –

+0

私のために、直接ウィンドウでもうまく動作します。何を試しましたか? – Absinthe

関連する問題