SagJoker 发表于 2020-9-2 21:42

C#如何查询excle里的数据?


比如这个图,我输入身份证,能得到编号几吗?
比如。我输入19910101,得到编号1。
https://attach.52pojie.cn/forum/202008/27/154914wm51w2kf9s9bwhbs.png
C#怎么实现?各种面向百度找不到。。
然而python只需要一句
self.data.loc[self.data['身份证'] == 19910101, '编号']

SagJoker 发表于 2020-9-3 19:38

解决了。多谢各位。
第一步,将excel转为DataTable,
第二步,Select方法解决。
也是简单明了,Nice!

DataTable dt = Excel_ylz1.XlsxToDataTable("库.xlsx");
DataRow[] s = dt.Select("身份证号='203255515'");
Console.WriteLine(s.ItemArray);

涛之雨 发表于 2020-9-2 21:57

https://jingyan.baidu.com/article/ca41422f18927d1eae99ede2.html
应该是要把Excel数据全部弄到内存里然后自己去找。。。吧{:301_1008:}
不知道有没有对应的封装

SagJoker 发表于 2020-9-2 22:02

涛之雨 发表于 2020-9-2 21:57
https://jingyan.baidu.com/article/ca41422f18927d1eae99ede2.html
应该是要把Excel数据全部弄到内存里然 ...

{:1_907:}这是C。我学的是C sharp。

ikea 发表于 2020-9-2 22:08

https://www.cnblogs.com/scarlett-hy/p/10571905.html
百度所得

明月相照 发表于 2020-9-2 22:09

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.Office.Interop.Excel;
using System.Diagnostics;
using System.Reflection;

namespace ConsoleApplication3
{
    class EditExcel
    {
      #region 查询Excel中的数据
      /// <summary>
      /// 查询Excel中的数据
      /// </summary>
      /// <param name="ExcelName"></param>
      public void query(string ExcelName)
      {
            //创建 Excel对象
            Application App = new Application();
            //获取缺少的object类型值
            object missing = Missing.Value;
            //打开指定的Excel文件
            Workbook openwb = App.Workbooks.Open(ExcelName, missing, missing, missing, missing,
                missing, missing, missing, missing, missing, missing, missing, missing, missing, missing);
            //获取选选择的工作表
            Worksheet ws =((Worksheet)openwb.Worksheets["Sheet1"]);//方法一:指定工作表名称读取
            //Worksheet ws = (Worksheet)openwb.Worksheets.get_Item(1);//方法二:通过工作表下标读取
            //获取工作表中的行数
            int rows = ws.UsedRange.Rows.Count;
            //获取工作表中的列数
            int columns = ws.UsedRange.Columns.Count;
            //获取指定单元格数据
            Console.WriteLine("请输入你行号:");
            int row = Convert.ToInt16(Console.ReadLine());
            Console.WriteLine("请输入你列号:");
            int column =Convert.ToInt16( Console.ReadLine());
            string temp = ((Range)ws.Cells).Text.ToString();
            Console.WriteLine("您查询的结果为:"+temp);
            Console.ReadLine();
      }
      #endregion
    }
}
以上取自CSDN看看有没有用吧。

xiaovssha 发表于 2020-9-2 22:11

Aspose.Cells.dll
用第三方插件读取、导出,香

SagJoker 发表于 2020-9-2 22:16

ikea 发表于 2020-9-2 22:08
https://www.cnblogs.com/scarlett-hy/p/10571905.html
百度所得

............................
认真的吗?我看毫无所得啊

SagJoker 发表于 2020-9-2 22:17

明月相照 发表于 2020-9-2 22:09
using System;
using System.Collections.Generic;
using System.Linq;


这个我看到了,没用。。多谢了。

SagJoker 发表于 2020-9-2 22:19

xiaovssha 发表于 2020-9-2 22:11
Aspose.Cells.dll
用第三方插件读取、导出,香

这玩意好像有点意思。我研究研究,多谢

Wapj_Wolf 发表于 2020-9-2 22:20

还是Python强大,C#初学者帮顶…
页: [1] 2 3
查看完整版本: C#如何查询excle里的数据?