我在寫一個C#應用程序,它可以從Excel表格中讀取。它讀取整個表格,但是我只想讀取一行中的特定單元格,然後移動到下一行並再次讀取該行中的特定單元格。沒有讀取或忽略的單元格對於Excel中的所有行都是相同的。下面是閱讀Excel中我的示例代碼:如何讀取Excel單元格並寫入數據庫
private void button1_Click(object sender, EventArgs e)
{
Excel.Application xlApp = new Excel.Application();
Excel.Workbook xlWorkbook = xlApp.Workbooks.Open(@"C:/test.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; i++)
{
for(int j=1; j<=colCount; j++)
{
MessageBox.Show(xlRange.Cells[i,j].Value2.ToString());
}
}
}
只需調整您的for循環中的i和j值以便只遍歷所需的單元格? – PoeHaH 2012-08-13 14:30:46
@poehah謝謝PoeHaH。我怎麼做? – Sithelo 2012-08-14 13:11:03
現在,您正在從第1行讀取rowcount和第1單元格到columncount。這意味着你正在閱讀每一行和每一個單元格。如果您想要讀取的單元格全部緊挨着彼此,您可以將第二個for循環更改爲:for(int j = 6; j <= 8; j ++),它將只讀取單元格6至8。如果您想要閱讀的單元格不在彼此旁邊,則使用此代碼將會更棘手 – PoeHaH 2012-08-15 06:01:09