問題タブ [ms-office]
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 - Microsoft Office 用 .NET アドインの単体テスト
マネージド アプリケーション アドイン for Office の単体テストに関する提案はありますか? 私は NUnit を使用していますが、MSTest でも同じ問題がありました。
問題は、Office アプリケーション (私の場合は Word) 内に読み込まれた .NET アセンブリがあり、.NET アセンブリのそのインスタンスへの参照が必要なことです。オブジェクトをインスタンス化することはできません。これは、実行する Word のインスタンスがないためです。
これで、Application.COMAddIns("Name of addin").Object インターフェイスを使用して参照を取得できますが、これは RequestComAddInAutomationService を通じて返される COM オブジェクトを取得します。これまでの私の解決策は、テストしたい実際の.NETオブジェクトのすべてのメソッドに対して、そのオブジェクトにプロキシメソッドを持たせることです(すべて条件付きコンパイルで設定されているため、リリースされたバージョンでは消えます)。
COM オブジェクト (VB.NET クラス) には、実際には実際のアドインのインスタンスへの参照がありますが、それを NUnit に返そうとしたところ、適切な p/Invoke エラーが発生しました。
System.Runtime.Remoting.RemotingException : このリモート プロキシにはチャネル シンクがありません。これは、リッスンしている登録済みサーバー チャネルがサーバーにないか、このアプリケーションにサーバーと通信するための適切なクライアント チャネルがないことを意味します。System.Runtime.Remoting.Proxies.RemotingProxy.InternalInvoke (IMethodCallMessage reqMcmMsg、ブール値の useDispatchMessage、Int32 callType) で(MessageData& msgData、Int32型)
メインのアドイン COM を表示できるようにしてみましたが、エラーは次のように変化します。
System.InvalidOperationException : オブジェクトの現在の状態のため、操作は有効ではありません。System.RuntimeType.ForwardCallToInvokeMember (文字列 memberName、BindingFlags フラグ、オブジェクト ターゲット、Int32 [] aWrapperTypes、MessageData & msgData) で
回避策はありますが、面倒で、テスト プロジェクトではなく実際のプロジェクトに多くのテスト コードを配置します。これは、NUnit が実際に動作する方法ではありません。
vba - PowerPoint でのオブジェクトの名前変更
おそらく非常にばかげた質問ですが、PowerPoint でオブジェクトの名前を変更する方法がわかりません。たとえば、すべてのグラフはデフォルトで「Graph 1」などと呼ばれています。ありがとう!
java - MS Office をインストールせず、Interop Library を使用せずに、サーバーで MS Office ファイルを読み取るにはどうすればよいですか?
相互運用ライブラリは低速で、MS Office をインストールする必要があります。多くの場合、MS Office をサーバーにインストールしたくありません。
Apache POIを使用したいのですが、.NET を使用しています。
ファイルのテキスト部分を抽出するだけでよく、Office ファイルに情報を作成したり「保存したりする」必要はありません。
非常に大きなドキュメント ライブラリがあり、それを新しい XML ファイルに変換できません。
バイナリ ファイルのパーサーを書きたくありません。Apache POI のようなライブラリがこれを行います。残念ながら、これは Java プラットフォーム専用です。このアプリケーションを Java で作成することを検討する必要があるかもしれません。
.NET で POI に代わるオープン ソースをまだ見つけられていません。Java で独自のアプリケーションを作成すると思います。
winforms - Winforms アプリケーションで Office 2003/2007 COM オブジェクト (正しいもの) を選択する
インストールされている Office のバージョンに応じて、Office 2003 または Office 2007 COM オブジェクトを参照する必要がある Windows フォーム アプリケーション (C# または VB.NET) を作成しています。このシナリオを処理し、実行時に正しい COM オブジェクトを参照する最善の方法は何ですか?
ms-word - VSTO を使用して新しい Word ドキュメントを作成する
Visual Studio Tools for Office を使用してプログラムで新しい Word ドキュメントを作成するにはどうすればよいですか?
user-interface - ワープロで Office リボンを使用する
Microsoft は、ワープロやスプレッドシート アプリなどの競合製品を除いて、市販の Office UI コントロールの使用を許可していると聞きました。
それはどのくらい本当ですか?
また、そうでない場合、無料のリボン コントロールをご存知ですか?
reference - ActiveX を介して Office ドキュメントを操作するための適切なオンライン リファレンスは何ですか?
ActiveX を使用して Excel (および場合によっては Word) ドキュメントを開いて操作する方法について説明しているリファレンスを探しています。私はオンライン リファレンスを好むが、書籍の提案も役に立ちます。
vba - dd/mm は自動的に mm/dd に変更されました
Access VBA で Date ステートメントを使用して何かをコーディングしました。今月の初めまでは問題なく動作していましたが、現在、日付の形式が からdd/mm/yyyy
に自動的に変更されていることがわかりますmm/dd/yyyy
。他の誰かが同じ問題に遭遇しましたか?
ms-access - DoCmd.SendObjectが失敗した場合?
DoCmd.SendObjectを使用してMSAccess2003から電子メールを送信しています。これにより、関連するすべてのフィールドに入力されたOutlookが開きます。ただし、ユーザーはその時点で電子メールを送信することを選択できない場合があります。その場合、「アクションの送信がキャンセルされました」というプロンプトが表示されます。ユーザーによるこの電子メールの非送信をキャッチする方法はありますか