問題タブ [xll]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
excel - 複数のプロジェクト DLL のロード
私が直面しているこの XLL ロードの問題について誰か助けてもらえますか?
私はprj1とprj2を持っているDLLソリューションを持っています。
prj1 には、私が作成したいくつかのユーザー定義関数を含む prj1cppfile があります。
prj2 には prj2cppfile があり、これには私が書いたユーザー定義関数がいくつかあります。
ここで、ソリューション メイク prj1 をスタートアップ プロジェクトとして選択します。
次にF5、デバッグ モードでコードの使用を開始します。
私が観察したのは、(開いた Excel スプレッドシートで) prj1cppfiles の関数しか持っていないことです。
prj2 をスタートアップ プロジェクトとして選択すると、prj2cppfiles にある関数が表示されます。
今私が望むのは、prj1 と prj2 の両方をロードして、2 つの異なるプロジェクトにある prj1cppfile と prj2cppfile の関数を表示することです。
誰かがこの問題を解決するのを手伝ってくれませんか。どのスタートアップ プロジェクト (prj1 または prj2) を選択しても、すべての関数 (prj1cppfile および prj2cppfile から) を Excel で公開できるように、ソリューションをセットアップしたいと考えています。
私は Visual Studio 2008 を使用しており、Codeplex の Keith Lewis コードの XLL コードを使用しています。私は XLL を書くのが初めてなので、その過程で学ぼうとしているので、詳細な回答をお願いします。
私が観察したのは、ソリューション prj1.dll のデバッグ フォルダーにあり、prj2.dll が存在します。スタートアップ プロジェクトとして prj1 を選択し、f5 キーを押して Excel を開きます。次に、デバッグ フォルダーに移動し、開いている Excel に prj2.dll をドラッグ アンド ドロップします。これを行うと、prj1.dll と prj2.dll にあるすべての関数にアクセスできます。さまざまな dll が保持するすべての機能を含むマスター dll を持つことはできませんか? このマスター DLL をセットアップする方法は何ですか。
一番
c - ASCII文字をx11キーコードに変換します
私はASCII文字の形で入力を受け取る小さなプログラムを持っています。x11関数で使用するためにこれらをキーコードに変換できる必要があります。これまたは別のライブラリを実行するためのxlib関数はありますか?それとも、大きなスイッチケースが最適ですか?
c# - C# プロジェクトで Excel アドインの関数を呼び出すことはできますか?
Excel アドインは C++ で作成されていますが、ソース コードはありません。
その関数を Excel スプレッドシートで使用できます。C#で同じことができますか?
解決済み:
ありがとう、次のコードで動作します:
c++ - C++ 64 ビット Excel アドイン (XLL) が 64 ビット Excel で正しく読み込まれない
XLL (Excel アドイン) を作成する C++ コードがあります。Excel で正常にロードでき、完全に機能します。
その後、64 ビット Excel に切り替えたところ、コードが機能しなくなりました。そのため、x64 プラットフォーム設定を使用して、Visual Studio でコードを再コンパイルしました。コンパイルにエラーはありませんでした。
これを 64 ビット Excel に読み込もうとすると、Excel はファイル拡張子を認識しません。
「'MyAddin.xll' のファイル形式と拡張子が一致しません。」というエラーが表示され、続行するための次のオプションが表示されます: yes、no、またはcancel.
メッセージを無視して を押すyesと、アドインがクラッシュし、次のエラーが表示されます。
このプログラムは DOS モードでは実行できません。
アドインは正しくコンパイルされるため、このエラーのトラブルシューティング方法がわかりません。私の質問は次のとおりです。この問題を解決する方法について誰か教えてください。
私の要件は次のとおりです。
64 ビット Excel は、XLL を有効なアドインとして認識しなければなりません (最初のエラー メッセージが消える必要があります)。
2番目のエラーはどういう意味ですか?
excel - Excelのプラグイン開発
Excel用のプラグインを開発する必要があります。Plugins for Eclipse と同じように動作するはずです。状況に応じたメニューとして利用できる必要があり、現在開いているスプレッドシートの内容やチャートの内容などにアクセスできる必要があります。
Excel 用のアドインを開発するための次のリンクを見まし た。 XLL SDK)。
これは、Excel 用のプラグインを開発するための唯一のオプションですか?
c# - xlw から xlw.Net への XLL の移植
VS 2008 で開発された 2 つのプロジェクトがあります。
- C++ dll (コア ライブラリ)
- C++ Excel アドイン Xll (XLW 4_0_0f0 を使用)
dll と xll の間で Xlw::XlfOper 変数を転送します。それは長い間うまく機能しています。
現在、xlw.Net を使用して C# でアドイン プロジェクトを再実装しようとしています (以下の 3 つのプロジェクトのように)。
- ネイティブ C++ dll (コア ライブラリ)
- マネージ C++ ラッパー dll (C++/CLI)
- C# Excel アドイン Xll (XLW.Net を使用)
xlw.Net は XlfOper をサポートしていないため、代わりに C++ dll で Xlw::CellMatrix を使用できます。マネージ dll で xlw::CellMatrix と xlwDotNet::CellMatrix の間の変換を行っています。次に、XLW.Net を使用してテンプレート アドイン プロジェクトを作成し、ラッパー dll を参照します。しかし、それは CS:0433 をスローします: タイプ 'xlwDotNet::CellMatrix' は両方の dll (つまり、ラッパーと xlw.Net) に既に存在します。
コンパイラ コマンド参照エイリアスを使用してこのエラーを取り除くことができるかもしれませんが、私の質問は特にこのエラーについてだけでなく、アドインを C++ から C# に移植する方法についてです。具体的に言うと、私の状況で C# で XLL を作成するための他のより良い方法はありますか? 私は.Netが初めてです。ネイティブ dll が CellMatrix を使用していない場合、またはコア ライブラリが C# で記述されている場合は、非常に簡単です。このような状況を経験した人はいますか?私は多くの試行錯誤を行い、インターネットでこの問題を検索しましたが、成功しませんでした。
ネイティブ ライブラリは非常に大きく、パフォーマンスの問題から C# に変換したくありません。
ありがとうございました。
excel - XLLをExcelにロードする:[ツール]->[アドイン]と[ファイル]->[開く]の違いはありますか?
XLLを持っているので、Excelにロードしたいと思います。
[ツール]->[アドイン]または[ファイル]->[開く]以外の方法でロードすることに違いはありますか?
- [ファイル]->[開く]を使用すると、アンロードできません。
- Excelを再起動しても自動的に読み込まれません。
ありがとう!
c++ - XLLSDKの例でxlcalertが機能しない
XLL開発は初めてです。2010 XLL SDKをダウンロードし、VisualC ++ 2012でサンプルをビルドできました。Excel2010でxllをロードすると、「ありがとう...」というメッセージが表示されたポップアップが表示され、サンプルからエクスポートされたすべての関数が表示されます。 Excelなので、すべてが正常に読み込まれているようです。
ただし、xlcalertはほとんどの関数で機能しません。とからのみポップアップダイアログが表示さxlcalertれます。関数を変更して、次のことを実行しました。xlAutoAddxlAutoRemoveEvaluateExample()
関数を実行すると、ポップアップが表示されません。私は何が欠けていますか?xlcalertへの参照があまり見つからないようです。
前もって感謝します
c++ - XLLUDFから配列を返す方法
C APIを使用して、Excel用の配列コンストラクターをワークシート関数として記述しようとしています。
ゴール:=array_cons(1, 2, 3) => {1, 2, 3}
ただし、XLOPER12を正しく初期化できていません。Excelでは、私の関数は現在。を返します#NUM。vargs引数リストを取得し、マクロを介して配列にパックしてから、提供された配列の一部を返そうとしています。
c++ - メモリ リークなしで Excel に文字列を返す Excel C アドイン関数を作成する方法は?
C++ を使用して Excel XLL アドインを作成しています。定義済みの XLOPER12 を使用して、関数が Excel に文字列を返すようにします。
私が理解しているように、Excel では関数がメモリを指すポインターを返す必要があり、その後、関数に割り当てられたメモリをクリアせずに浅いコピーを作成します。したがって、次のようなものを書くと:
しかし、明らかにこれはメモリリークを引き起こします。res を静的変数として宣言できると誰かが提案していますが、初期化する方法がよくわかりません。
すべての提案を歓迎します。
一番
