Office.Interop.Excel を使用して、Excel ファイルから WinForm にデータをエクスポートする方法の例が Web 上に多数あります。Excel ファイルはディスクに保存されています。簡単な例を次に示します。
private void button1_Click(object sender, EventArgs e)
{
Excel.Application xlApp = new Excel.Application();
Excel.Workbook xlWorkbook = xlApp.Workbooks.Open(@"C:/Users/1/Desktop/test2.xlsx");
Excel._Worksheet xlWorksheet = xlWorkbook.Sheets[1];
Excel.Range xlRange = xlWorksheet.UsedRange;
int rowCount = xlRange.Rows.Count;
int colCount = xlRange.Columns.Count;
for (int i = 1; i < rowCount+1; i++)
{
for (int j = 1; j < colCount+1; j++)
{
textBox1.Text= (xlRange.Cells[2,2].Value2.ToString());
textBox2.Text = (xlRange.Cells[2, 3].Value2.ToString());
}
}
}
残念ながら、Excel ファイルが既に開いていて、スレッドからのデータがスプレッドシートに読み込まれ、セル内の数値が毎秒変化している場合、データをエクスポートする方法を見つけることができませんでした。上記のコードでは、最後に保存されたデータのみがテキスト ボックスに表示されます。私の問題の解決策はありますか?