c#读取excel指定行以后的问题
用c#读取excel到dataset里面,前面5行需要省去,如何实现?以下是代码:
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" +
"Data Source=" + excelFile + ";" + "Extended Properties=Excel 8.0; HDR=YES; IMEX=1";
OleDbConnection conn = new OleDbConnection(strConn);
conn.Open();
string strExcel = "";
OleDbDataAdapter myCommand = null;
strExcel = string.Format("select * from [{0}$]", sheetName);
myCommand = new OleDbDataAdapter(strExcel, strConn);
myCommand.Fill(ds, sheetName); --------------------编程问答-------------------- select * from [{0}$],excel中如果有id之类的,可以用select * from tt where tt.id not in (select top 5 id from tt);// --------------------编程问答-------------------- sorry,你可以取出datatable后,在datatable中操作。 --------------------编程问答--------------------
删除语句怎样写? --------------------编程问答-------------------- 看看可以不
--------------------编程问答-------------------- "select * from [{0}$] where id >5 --------------------编程问答-------------------- 如果用4楼的方法,注意每次应该删除第一行的值。
for (int i = 0; i < 5; i++)
{
ds.Tables[sheetName].Rows.RemoveAt(i);
}
ds.Tables[sheetName].AcceptChanges();
for (int i = 0; i < 5; i++)
{
dt.Rows.RemoveAt(0);
} --------------------编程问答-------------------- 现在关键是前5行数据格式是完全不同的,没办法导入到dataset中,所以必须在读取excel时就要跳过前5行,
怎么才能实现? --------------------编程问答-------------------- 看看http://www.codeproject.com/Articles/37055/Working-with-MS-Excel-xls-xlsx-Using-MDAC-and-Oled
一般这种需要忽略前面多少行的,.csv应该会更方便些吧。 --------------------编程问答-------------------- 有两个问题,请高手指教:
1、excel前5行是标题等内容,格式与要读取的数据格式不同,如何跳过前5行,读取到正式数据内容?
2、excel中正式数据内容第一列的内容,是有很多单元格合并的,后面各行共用一格,这样的如何读取?
哪位有实例可以参考?谢谢 --------------------编程问答-------------------- ExcelHelper参考 http://blog.csdn.net/rui_china/article/details/10405069
System.Windows.Forms.OpenFileDialog openFileDialog = new System.Windows.Forms.OpenFileDialog();
openFileDialog.Filter = "*.xls;*.xlsx|*.xls;*.xlsx";
if (openFileDialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
string filepath = openFileDialog.FileName;
ShowExcelFile showExcelFile = new ShowExcelFile(filepath);
showExcelFile.Owner = this;
showExcelFile.ShowDialog();
if (showExcelFile.isSave)
{
DataTable dt = new ExcelHelper().ReadExcelFile(filepath);
for (int i = 0; i < dt.Rows.Count; i++)//设置起始行
{
}
Materiallist = list;
try
{
}
catch
{
}
} --------------------编程问答--------------------
看了你的需求,我觉得使用office组件直接操作excel比较好。 --------------------编程问答-------------------- 跳过5行的问题已经解决,
对于第一列有合并单元格的情况,怎么把合并的单元格的内容加到ds中的每一行中? --------------------编程问答-------------------- 继续求助...
补充:.NET技术 , C#