問題タブ [office-interop]
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.
c# - Word文書を作成し、.NETアプリから画像を追加します
(テンプレートなどから)Word文書を生成し、特定の場所に画像を挿入する方法が必要です。誰かがこれを行うための最良の方法について何か指針を持っていますか?
私は数年前に.NET1.1でOfficeAutomationを使用したプロジェクトに取り組みましたが、それは言葉では言い表せないほど貧弱でした。私はOAが改善されたか、より良い解決策に取って代わられたと思いますが、私はグーグルで多くのアドバイスを見つけていません。
明確にするために編集します。これはWebまたはSharePointサーバーで実行されます
c# - Web ページのボタンから Word アプリケーションを開く
概念実証 Web アプリケーションを開発しています。ユーザーの PC にインストールされている Word アプリケーションを開くボタンを備えた Web ページです。
Visual Studio 2008 Express (Windows XP クライアント、LAMP サーバー) の C# プロジェクトに行き詰まっています。私は.NET チュートリアルで ActiveX コントロールを作成するに従って、いくつかの調整を行った後、正常に動作しました。次に、Word を開くためのボタンを追加しました。
問題は、プロジェクトから Microsoft.Office.Interop.Word を参照できることですが、Web ページからはアクセスできません。エラーには、「そのアセンブリは部分的に信頼された呼び出し元を許可していません」と表示されます。
私は .NET のセキュリティについて多くのことを読んできましたが、今では完全に道に迷っています。免責事項: 私は 4 日前から .NET に夢中です。
この問題を回避しようとしましたが、光が見えません!! それが可能になるかどうかさえわかりません!
c# - C#でExcelファイルが書き込み保護されているかどうかを確認するには?
Excelファイルを開いて、ファイルが書き込み保護されているかどうかを確認する必要があるサンプルアプリケーションを開発しています。コードは
ファイルが書き込み保護されているかどうかを知りたいです。
c# - Interop.Wordを使用して、(Find.Executeを使用して)置換を実行し、元のテキストの位置合わせを保持する方法はありますか?
Interop.Word(11.0)を介してWord Automationを使用して、Word文書の検索/置換コードを作成しようとしています。私のドキュメントにはすべて、角かっこで囲まれたさまざまなフィールド(Document.Fieldsには表示されません)があります。たとえば、<DATE>
に置き換える必要がありますDateTime.Now.Format("MM/dd/yyyy")
。検索/置換は正常に機能します。ただし、置き換えられるテキストの一部は右寄せされており、置き換えられると、テキストは次の行に折り返されます。交換を実行するときに正当化を維持できる方法はありますか?コードは以下のとおりです。
TIA。
c# - エラー!(C# から Excel の名前付き範囲を使用)
以下では、一連のオブジェクトを Excel ワークシートに永続化しようとしています。値を格納するために関数が呼び出されるたびに、A
そのオブジェクトを格納するために列の次のセルを割り当てる必要があります。
ただし、 への最初の呼び出しで Interop ライブラリによって例外がスローされget_Range()
ます。(catch ブロックの直後)
私が間違っていることを誰かが知っていますか?
例外は COM ライブラリからスローされるため、埋め込まれた情報はあまり役に立ちません。ただし、次のとおりです。
"\r\nサーバー スタック トレース: \r\n\r\n\r\n[0] で例外が再スローされました: \r\n System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg) で\ r\n System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type) で\r\n Microsoft.Office.Interop.Excel._Worksheet.get_Range(Object Cell1, Object Cell2) で\r\n WorkbookTemplateManager.EditTemplateForm.AddName(String name, Object value) in C:\Documents and Settings\QueBITuser\My Documents\Visual Studio 2008\Projects\JRE.WCF\WorkbookTemplateManager\EditTemplateForm.cs:line 143\r\n at WorkbookTemplateManager. System.Windows の C:\Documents and Settings\QueBITuser\My Documents\Visual Studio 2008\Projects\JRE.WCF\WorkbookTemplateManager\EditTemplateForm.cs:line 124\r\n の EditTemplateForm.SaveTemplate(Object sender, EventArgs args)。フォーム。Control.OnClick(EventArgs e)\r\n で System.Windows.Forms.Button.OnClick(EventArgs e)\r\n で System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)\r\n で System. Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons ボタン, Int32 クリック)\r\n at System.Windows.Forms.Control.WndProc(Message& m)\r\n at System.Windows.Forms.ButtonBase.WndProc( Message& m)\r\n at System.Windows.Forms.Button.WndProc(Message& m)\r\n at System.Windows.Forms.Control.Control.ControlNativeWindow.OnMessage(Message& m)\r\n at System.Windows. Forms.Control.ControlNativeWindow.WndProc(Message& m)\r\n at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)"OnMouseUp(MouseEventArgs mevent)\r\n at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)\r\n at System.Windows.Forms.Control.WndProc(Message& m)\r\ n at System.Windows.Forms.ButtonBase.WndProc(Message& m)\r\n at System.Windows.Forms.Button.WndProc(Message& m)\r\n at System.Windows.Forms.Control.ControlNativeWindow.OnMessage( Message& m)\r\n at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)\r\n at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) "OnMouseUp(MouseEventArgs mevent)\r\n at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)\r\n at System.Windows.Forms.Control.WndProc(Message& m)\r\ n at System.Windows.Forms.ButtonBase.WndProc(Message& m)\r\n at System.Windows.Forms.Button.WndProc(Message& m)\r\n at System.Windows.Forms.Control.ControlNativeWindow.OnMessage( Message& m)\r\n at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)\r\n at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) "Windows.Forms.Button.WndProc(Message& m)\r\n at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)\r\n at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) )\r\n at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)"Windows.Forms.Button.WndProc(Message& m)\r\n at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)\r\n at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) )\r\n at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)"
c# - 2 つの個別の Excel アプリで、ある Excel シートから別の Excel シートに変更をどのように複製しますか?
これはすべて、C# .NET Excel Interop Automation for Office 2007 にあります。
2 つの Excel アプリを作成し、各アプリケーションで同じブックを開くとします。
次に、workbook2 で発生したすべての変更を workbook にレプリケートします。SheetChanged イベントをフックして、セルの変更をキャプチャできることがわかりました。
計算の変更をどのようにキャプチャしますか? 計算イベントにフックすることはできますが、渡されるのは更新されたセルではなく、シートだけです。app.Calculate() または app.CalculateFullRebuild() を強制しようとしましたが、他のアプリケーションでは何も更新されません。数式が変更された場合、変更イベントは発生しません (つまり、スライダー コントロールによって SheetChange イベントではなく SheetCalculate イベントが発生します)。
どの数式が更新されたかを確認する方法はありますか? または、2 つのワークブックをプログラムによってリアルタイムで同期する簡単な方法はありますか?
ms-word - Word Interop コンパイル時エラー
asp.net アプリケーションでアセンブリ Microsoft.Office.Interop.Word を参照すると、次のエラーが発生します。
タイプ 'Microsoft.Office.Interop.Word.ApplicationClass' は両方に存在します
と
以前、エラーが発生しましたが、12.0.0.0 は Visual Studio の下の PIA ディレクトリにありましたが、別のパスを指していることを除いて、エラー メッセージは同じでした。それ以来、dll を GAC にコピーしましたが、同じエラーが発生しました。
私は.Netがこれを処理するはずだと思っていました。誰か助けてくれませんか?
ところで、私はVisual Studio .Net 2008を使用してこれを行っています
c# - Excel相互運用機能のset_Value(XLRangeValueDataType.XLRangeValueMSPersistXML、object)の使用中にエラーが発生しました
範囲でExcelInteropsset_Valueを使用しているときにエラーが発生します。どんな助け/提案も価値があります。
これは失敗しているコードです。
ここでコードは失敗します。Excelの範囲から取得しているのと同じオブジェクト値を設定しています。表示される例外はSystem.NotImplementedExceptionです。
値をExcelの範囲に戻すときに、オフィスの相互運用機能がXLRangeValueMSPersistXMLをサポートしていない場合は、現時点ではわかりません。
c# - Microsoft.Office.Interop.Excel を介して Excel のバージョン/カルチャを確認する
.NET/C# でそれを実現するにはどうすればよいですか?
vba - プログラムでPowerPointファイル形式を取得する方法
ActivePresentation
が97-2003形式か2007形式かを判断する必要があります。私は本当に拡張子をチェックしたくありません。
この情報を提供するPowerPointオブジェクトモデル内のどこかにプロパティがありますか?