問題タブ [excel-automation]
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.
vb.net - VB.NET アプリから Excel を呼び出す場合、Excel をアプリの前に表示するにはどうすればよいですか?
Microsoft.Office.Interop.Excel を使用してスプレッドシートを開き、そこにデータを送り込み、ピボット テーブルのデータを更新して、ユーザーにスプレッドシートを表示する VB.NET アプリケーションがあります。
コードは非常に単純です (エラー処理は示されていません)。
このコードを実行すると、呼び出し元のアプリの背後で Excel が開かれ、データ接続を更新しているため、小さな Excel の [SQL Server ログイン] ダイアログも呼び出し元のアプリの背後に表示されるため、ユーザーは ALT を実行する必要があります。 +TAB で Excel に移動するか、タスク バーで Excel をクリックします。どちらもユーザーにとって優れたエクスペリエンスではありません。呼び出し元のアプリの前にログイン ダイアログが表示されるようにします。
これを達成する方法を誰かが提案できますか? Visible & UserControl プロパティの設定を RefreshAll の後に移動しようとしましたが、違いはありません。
乾杯、
クリス。
vba - VBA を使用したメッセージ ボックスの自動クリック
会社のアドインのテストケースを自動化しています。
テストケースの 1 つで、ワークブックをローカル マシンに保存した後、ワークブックを閉じようとすると、[はい] をクリックする必要があります - 編集したデータをデータベースに保存します。[いいえ] - 編集を破棄するか、[キャンセル] をクリックします。単にメッセージ ボックスを閉じます。
sendKeys を使用してみましたが、うまくいきませんでした。
例: VBA コードで [いいえ] をクリックするために、次のようにタブを送信してキーを入力しようとしました。
さまざまな時間値を試してみましたが、まだ成功しませんでした。誰かがこれを手伝ってくれたらうれしいです。
前もって感謝します!:)
更新:今のところ、私はこれをやっています:
しかし、メッセージ ボックスのウィンドウ オブジェクト参照を取得する方法はありますか? またはとにかくワークフローに固執するには: ワークブックを編集 -> 保存 -> 閉じてみる -> データベースへの変更を破棄/コミットすることを選択しますか?
注:データベースへの変更を破棄/コミットするということは、データが更新されるサーバーを意味します。Excel は、ユーザーのための単なるインターフェイスです。Excelだけを保存したくないのですが、サーバー上で破棄/保存の変更を呼び出す操作も...
vba - VBA で条件付き書式のオプション属性をチェック中にエラーが発生しました
2 つの VBA サブルーチンを作成しました。
1) 条件付き書式を設定する (オプションとして、演算子、式 1 および式 2 を使用)
2) シートで条件付き書式 (CF) を確認し、各 CF の属性を印刷するには:
ここで、条件付き書式を設定したい場合は、関数呼び出しを行うことにより、「値が 2 より大きいセルのセルは RGB(198, 239, 206) で色付けされ、フォントは RGB(255, 255, 0) である必要があります」とします。
If IsMissing(cellRange.FormatConditions(i).Formula2)
checkConditionalFormattingsOnSheetでエラーが発生しています:
エラー: アプリケーション定義またはオブジェクト定義のエラー HelpContext: 1000095、ErrorId: 1004
「Is Nothing」、「IsNull()」、Formula2 のパラメーターをそれぞれ Nothing および Null として渡すなど、他のオプションを試しましたが、うまくいきませんでした。
事前にお時間をいただき、ありがとうございます。:)
excel - アドインをインストールした後、Excel で「1」個の引数を使用して「Open」を呼び出す例外: ...」
私は、当社のアドインをExcelにインストールし、ライブラリファイル(ライブラリマクロサブルーチンと関数を含むlibrary.xlsm)をロードするExcelオートメーションを自動化しようとしています。この後、テストごとに、対応する test.xlsm ファイルを読み込み、マクロを実行します。これはすべて、powershell (V3) を使用して行っています。私のスクリプトは、あるマシンで呼び出され、別のリモート マシンで実行されます。
これは私がアドインをインストールする方法です:
PS: マクロのヘルパー関数が C# コードを呼び出すため、.dll ファイルを追加しています。
ただし、これらの xlsm ファイルを開くと、次のエラーが表示されます。
"1" 個の引数を指定して "Open" を呼び出し中に例外が発生しました: "Microsoft Excel はファイル 'D:\ABC\XYZ\workspace\library.xlsm' にアクセスできません。いくつかの理由が考えられます: ファイル名またはパスが存在しません。ファイルは別のプログラムによって使用されています。保存しようとしているブックは、現在開いているブックと同じ名前です。」C:\Users\Serviceadmin\AppData\Local\Temp\hudson.ps1:94 において char:3 + $libraryBook = $excel.workbooks.open("$xlLibraryPath\$xlLibraryFileName"); + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (:) [], MethodInvocationException + FullyQualifiedErrorId : ComMethodTargetInvocation
ファイルのパスが正しいにもかかわらず、上記のエラーが発生します。これは、powershell を使用してファイルを開く方法です。
次のことを確認しました:
1. 必要なマシンに Excel がインストールされている - はい、Excel 2013
2. xlsm ファイルのパス - すべてが存在する
3. アドインが正常にインストールされている
私が見逃しているものはありますか?
前もって感謝します!:)
python - Python - Excel ファイルの異なるシートを個々の Excel ファイルとして保存する
初心者 : 100 を超える異なるシートを含む Excel ファイルがあります。各シートには、いくつかの表とグラフが含まれています。
すべてのシートを新しい Excel ファイルとして保存したいと考えています。
多くの python コードを試しましたが、どれも機能しませんでした。
これを手伝ってください。ありがとう!
編集1:コメントに応えて、これは私が試したものです:
正確に言うと、問題はテーブルとチャートのコピーに来ています。
c# - 見出し行を除いて、 Auto Filter の後に表示されている行を削除するにはどうすればよいですか?
Excel Interop では、 a を設定した後Range.Autofilter()
、最初の行を除くすべての表示行を削除する必要があります。最初の行はシートの見出し行なので。ありがとう 。
c# - Visual Studio C# の Properties.Settings.Default の問題
ここで私が直面している問題は、Excel 用の COM とオートメーション アドインを組み合わせて構築していることです。作成したオートメーション アドイン クラスで Properties.Settings.Default にアクセスしようとすると、COM アドインが構成フォームを介して保存された値を返す場合でも、プロジェクトの既定値として設定した値が表示されます。 .
すべてのクラスは同じプロジェクト内にあり、同じ名前空間にあり、構成フォーム、COM アドイン、およびリボンのクラス ファイルはすべて、更新された Properties.Settings.Default 値にアクセスできます。オートメーション アドインと静的クラス (すべての重労働を処理する) は、更新された値にアクセスできません。
COM アドイン:
リボン:
形:
オートメーション:
最後に、静的クラス:
私が考えることができるのは、どういうわけか設定の 2 つ以上のインスタンスが作成されているということだけです。これを解決する方法について誰かがアイデアを持っているなら、それは素晴らしいことです。
EDIT:もう少し遊んでみると、COMアドインはロード時に保存された値のみを見て、次にオリジナルを見るようです。リボンはいつでも設定を見ることができます。
EDIT 2:解決して、将来の参考のために回答を入れてください。2日間の制限が終了すると、回答としてマークされます。