怎么用C#读取指定文件夹下的Excel文件中指定的列的内容,而且还需要遍历这个excel文件下的所以sheet?

如题所述

List<string> list1=new List<string>();
string[] str=Directory.Getfiles(@"文件夹路径");
if(str.length==0)
return ;
foreach(int i in str)
{
if(i.SubString(i.LastIndexof('.')-1)=="xlsx"||i.SubString(i.LastIndexof('.')-1)=="xls")
{
//new一个Excel进程
Excel.Application app = new Excel.Application();
//打开Excel文件
Excel.Workbook book1 = app.Workbooks.Open(i, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value,
Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);
for(int j=1;j<=book1.Worksheets.Count;j++)
{
Excel.Worksheet sheet1 = (Excel.Worksheet)book1.Worksheets[j];
for(int k=1;k>0;k++)
{
//m为指定列列号
//如果读取结束,就跳出循环
if(sheet1.Cells[k,m].ToString()==string.Empty)
break;
list1.add(sheet1.Cells[k,m]);
}
}
}
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2016-12-13
没问题,不过有啥意义?追问

需要帮助呗

追答

那你是不会遍历sheet还是不会遍历列呢?

追问

我是不会用 C#怎么取到excel的指定列

追答

你访问excel用的是office的interop还是ado.net的oledbconnection?

追问

C#

怎么用C#读取指定文件夹下的Excel文件中指定的列的内容,而且还需要遍 ...
string[] str=Directory.Getfiles(@"文件夹路径");if(str.length==0)return ;foreach(int i in str){ if(i.SubString(i.LastIndexof('.')-1)=="xlsx"||i.SubString(i.LastIndexof('.')-1)=="xls"){ \/\/new一个Excel进程 Excel.Application app = new Excel.Application();\/\/打开...

如何用c#读取excel单元格中最新的数据,每次要打开excel文件后才能读取...
\/\/ 1、获取你所需要的Excel单元格,这里的RangName,例如A2Excel.Range objRange = targetSheet.get_Range(RangName, Type.Missing);\/\/ 2、获取指定单元格的内容string theValue = objRange.Value2.ToString();\/\/ 3、计算时间差DateTime startTime = DateTime.Parse(theValue);string theSubtract =...

如何在c#下读取EXCEl表格中的数据,最好写一段代码
\/\/读取数据,通过Range对象 Excel.Range rng1=xSheet.get_Range("A1",Type.Missing);Console.WriteLine(rng1.Value2);\/\/读取,通过Range对象,但使用不同的接口得到Range Excel.Range rng2=(Excel.Range)xSheet.Cells[3,1];Console.WriteLine(rng2.Value2);\/\/写入数据 Excel.Range rng3=xSheet....

c#写一个代码,提取Excel中某一列属性值为A的行并存到新的Excel...
for (int i = 1; i <= rowCount; i++){ for (int j = 1; j <= colCount; j++){ \/\/new line if (j == 1)Console.Write("\\r\\n");\/\/write the value to the console if (xlRange.Cells[i, j] != null && xlRange.Cells[i, j].Value2 != null)Console.Write(xlRang...

怎样用c#编程循环读取excel中的数据
给你一个例子,请参考。private DataTable ExcelImport(string excelpath){ string path = excelpath;string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + path + ";Extended Properties='Excel 8.0;HDR=NO;IMEX=1;'";OleDbConnection conn = new OleDbConnection(strConn);conn....

如何使用C#取得表格中特定列下的有效值?
excel.Application.Workbooks.Open(file);excel.Visible = false;MSExcel.Worksheet sheet = (MSExcel.Worksheet)excel.ActiveSheet;string value = (Microsoft.Office.Interop.Excel.Range)sheet.Cells[1, 1]).Text.ToString();\/\/取得第一列第一行的数据,也就是第一个单元格的数据 Cells[行,列]...

c#如何读取一个excel单元格的值
class Program { static void Main(string[] args){ \/\/实例化Workbook类 Workbook wb = new Workbook();\/\/加载测试文档 wb.LoadFromFile("test.xlsx");\/\/获取指定表格中的指定单元格 Worksheet sheet = wb.Worksheets[0];CellRange range = sheet.Range["A1"];\/\/输出读取的值 Console.WriteLine(...

c#如何获取Excel指定多列的值
直接读取Excel啊。网上有很多的代码。大概代码可以如下:string connString = "Driver={Driver do Microsoft Excel(*.xls)};DriverId=790;SafeTransactions=0;ReadOnly=1;MaxScanRows=16;Threads=3;MaxBufferSize=2048;UserCommitSync=Yes;FIL=excel 8.0;PageTimeout=5;";connString += "DBQ=" + ...

请问如何用C#读取\/显示Excel
所以在用Visual C#调用Excel表格之前,必须完成从COM组件的非受管代码到受管代码的类库的转换。 (1).非受管代码COM组件转换成受管代码的类库: 首先把COM组件"EXCEL9.OLB"拷贝到C盘的根目录下,然后输入下列命令:tlbimp excel9.olb 这样在C盘的根目录下面就产生了三个DLL文件:"Excel.dll"、"Office.dll"、"VB...

C#如何实现读取excel表格中的数据并显示
读取Excel首先你在引用中得引用Microsoft office Excel 20** 对应的dll文件,才能读取到Excel的数据 在类里面引用:System.Data.OleDb;static public DataSet ExcelToDataSet(string filename){ DataSet ds;string strCon = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Extended Properties=Excel 8.0;" +...

相似回答