問題タブ [excel-dna]
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.
user-defined-functions - Excel UDF が膨大な数を返す
Excel DNA、VS2008、C#、MyUDF(param1、parm2) を使用する Excel アドインで「=MyUDF」と入力して Enter キーを押すと、Excel に 970063926 のような巨大な数字が表示され、MyUDF の c# コードが実行されない
この膨大な数は何だか分かる人いますか?
ありがとう
c# - Excel オブジェクト モデルでトリガーされるイベント
VS2008、.NET35、Excel アドイン、Excel-DNA、NetOffice リボン ボタンを無効/有効にするために、3 つのイベントをキャプチャします (たとえば、ユーザーがセルを選択した場合、セルの式は MyUDF1 であり、ボタン/メニュー項目は関連していません)。への MyUDF1 はグレー表示されます。)
ただし、ユーザーがシート全体をコピーして別のシートに貼り付ける場合、またはユーザーが列を選択して自動調整を行う場合、これはパフォーマンスに大きな打撃を与えます。Excel は 2 ~ 3 分間ハングするようです。どうもありがとう!
こんにちは、コピー/貼り付けが発生したときにExcelで何が起こっているかを調べるために、クライアントのPCで実行できるツールがあれば教えてください。プロセスモニターを試してみましたが、詳細が不十分なようで、そこから有用な情報を得ることができません。
c# - C# の Excel アドインで名前で Excel 範囲に簡単にアクセスできない
私は C# で (C# にも) アドインを作成するのは初めてです。ExcelDNA が単純な関数に対して非常にうまく機能することを確認しましたが、範囲の操作 (特にその名前で対処) という単純なタスクに行き詰まりました。このタスクに Interop を使用しようとしたことがわかります。これは私には簡単な方法に見えます。この非常に単純なコードで何が間違っているのでしょうか? 私はすでに ExcelDNA の Google グループに行きましたが、非常にぎこちない回答しか見つかりませんでした。
よろしくお願いします
ExcelDna.Integration の使用;
このエラーがスローされます
タイプ 'System.Reflection.TargetInvocationException' の最初の例外が mscorlib.dll で発生しました タイプ 'System.Runtime.InteropServices.COMException' の最初の例外が mscorlib.dll で発生しました
c# - Excel-DNAで作成されたExcel.XLLファイルからコンテンツを解凍します
あなたがexcel-dnaプロジェクトを知っているかどうかはわかりませんが、それは.netアセンブリと言語をExcelアドインに統合するのに役立つプロジェクトです。
私の問題は、xllファイルからdllを解凍したいということです(excel-dnaはxll内にリソースをパックできます)。
私はexcel-dnaソースをダウンロードし、すでにソースコードにこのベースを書いています:
しかし、それは機能しません。誰かがxllからdllを解凍するアイデアを持っていますか?
前もって感謝します、
c# - C# で現在の Workbook オブジェクトを取得する
Excel スプレッドシートでカスタム ドキュメント プロパティを作成するアプリケーションを C# で作成しています。ワークブック オブジェクトを受け取る関数があります...
ただし、実際に現在の Workbook オブジェクトを取得するのは非常に面倒です。機能を追加するために ExcelDNA を使用していますが、関数に有効な Workbook COM オブジェクトを渡すことができないようです。
excel - Excel DNA - 一緒にレガズムを避けることはできますか?
Excel DNAを評価して、Excel アドインの 1 つで使用しようとしています。C# 関数 (.NET 4.0) を使用しており、これらの関数を Excel から呼び出したいと考えています。私が興味を持っている理由は、私のアドインのユーザーは管理者ではないため、アドインを機能させるために、.NET dll で regasm を実行しない解決策を見つけることができれば、ブレークスルーになるからです。
次のように、ワークシート関数 (単純な戻り値の型と引数をprivate string Add (int a, double b)
使用) のようなものである場合は、次のように理解しています。また、 VBA からApplication.Runを使用してこれらの単純な関数を呼び出すこともできることを理解しています。
しかし、API に複雑な型が含まれていて、これを VBA から使用したい場合、そのアセンブリと型を再処理する必要がありますか? 次のような例:
または、Excel DNA に、 regasm や regsvr32 なしで VBA でそのような種類の関数を使用できる方法はありますか?
ありがとうマニ
c# - C#でExcelのセル形式をチェックして、セルの値が日付かどうかを確認する方法
みんなおはよう!
私はしばらくの間、ユーザーが一連の日付の一連の値を公開できるプロジェクトを開発してきました。
たとえば、ユーザーは、日付値を含むExcelの範囲と、これらの日付に対応する公開する値を含む同じサイズの範囲を選択します。
私がする必要があるのは(C#)両方の範囲のセル形式をチェックして、どちらが「実際に」日付であるかを確認することです。ExcelDNAを使用しており、すべての日付がdoubleとして返されるため、技術的に「値」を解析できます。日付に、そしてあらゆる種類の問題を引き起こします。
セルの書式を取得できれば、セルが実際に日付であるかどうかを確認できます。
前もって感謝します。
.net - アドインをロードするために Excel を制御する方法はありますか? (useLegacyV2RuntimeActivationPolicy の問題)
私は本当に厄介な状況に巻き込まれています。
シナリオ: .NET 4.0 ライブラリを (ExcelDna 経由で) 呼び出す Excel オートメーション VBA アドインがあります。この 4.0 ライブラリは、2.0 混合モード ライブラリのいくつかのメソッドを呼び出します。したがって、「BindAsLegacyV2Runtime」を 4.0 CLR に設定する必要がありました。これを 4.0 ライブラリに設定し、Excel がこのライブラリをインスタンス化すると、CLR はこの属性セットをロードし、すべて正常に動作します (このリンクを参照)。運用マシンでは拒否されているため、excel.exe.config を変更できません。
バッチ ファイルから Excel プロセスを開始し、アドインを次のようにロードします。
問題: 一部のユーザー コンピューターではこれが機能しないことがわかり、問題を調査して、Excel がパラメーターとして渡されたアドインをロードする前に、プレインストールされたアドインを最初にコンピューターにロードしていたことがわかりました。したがって、4.0 アドインが読み込まれる前に、Excel は他のアドインのために 2.0 CLR を読み込んでいました。したがって、属性の設定に失敗し、ロジックはトスになります。
Excel.exe.config を変更して (config に属性を追加するため)、アドインを登録することはできません。これは、どちらもユーザー マシンの管理者権限が必要であり、私の環境では不可能であるためです。
したがって、アドインのロードをExcelで制御する方法、またはこれを機能させる方法はありますか?
c# - null許容値を持つ多次元配列を単一に変換する
主に ExcelDNA/C#/Excel を使用しています。私が本質的にやろうとしているのは、次のコードを使用して、多次元配列 (つまり、セルの範囲) を特異次元配列に変換することです。
これはうまく機能し、プロジェクト全体で何度も使用されていますが、さらに機能を追加したいと考えています。
空のセルを含む範囲でこの関数を実行しようとすると、ひどくエラーになります。現時点では、空のセルに N/A を入力するようにユーザーに通知するエラー メッセージが表示された try/catch があります。
私が本当にやりたいことは、おそらくこの関数で、「null」またはExcelが空のセルをテキスト文字列「N/A」に変換することです。
c# - リンクラベルから Windows エクスプローラーを開くことは可能ですか?
みんなおはよう、
Excel アドインとして配布されるプロジェクトがあります。これは C# で記述され、ExcelDNA を使用しています。
私がやりたいことは、アドインのメイン フォームに linklabel を追加することです。クリックすると、G: ドライブなどの特定のインデックスで Windows エクスプローラーが開きます。
これは可能ですか?私はいくつかの例を見てきましたが、それらを論争させることができませんでした.
前もって感謝します!