プログラムでデータを更新し続けることができるように、.xls ファイルを Windows フォーム アプリの Web ブラウザー コントロールに読み込もうとしています。
たとえば、ユーザーがフォームのボタンを押すと、Excel シートのデータが更新されます。
私は非常に簡単にデータをコントロールにロードすることができました:
WebBrowser1.Navigate(PathToXLSFile)
そして、私がオンラインで読んだことによると、次の行に沿って何かを使用してそのシートを制御できるはずです。
Dim wb As Object
WebBrowser1.Navigate(PathToXLSFile)
wb = WebBrowser1.Document
さて、コードの最後の行をWebBrowser1_DocumentCompleted
とWebBrowser1_Navigated
モジュールの両方に入れてみましたが、両方ともWebBrowser1.Document = Nothing
.
私はオンラインで見て、 this 、 this 、 this などの解決策を見つけましたが、どれもうまくいきません。
繰り返しますが、私が探しているのは、Excel シートを webbrowser コントロール (または、より良いアイデアがある場合は別のコントロール) にロードし、.NET 経由で編集/変更できるようにすることです。
私の完全なシナリオについては(なぜこれが必要なのか):
基本的に、私のプログラムは、エンドユーザーが特定の方法でフォーマットされた (頻繁に変更される) ことを望む膨大な量のデータを生成するため、別の Excel シートのテーブルを参照する数式を使用して、フォーマットされた Excel シートを作成しました。 . そうすれば、私のプログラムは、計算されたすべての値をテーブルに吐き出すだけで済み、データはユーザーが見ることができます (プログラムを台無しにすることなく、非常に簡単にカスタマイズできます)。
課題は、彼らがこのデータの多くの反復を Windows フォームで見たいということです。したがって、基本的に私がする必要があるのは、新しいデータを見たいと思うたびに、その場で計算し、再表示することです。彼ら。
DataGridView は書式が複雑なため、ここで使用するのは非常に難しいことがわかりました。そのため、「出力」シートを (webBrowser コントロールを介して) 表示し、その機能を使用することを検討しています。出力シートが更新され続けるように、「入力」シートを新しいデータで更新し続ける。