我有这样的优秀......
| ------------ 表格 --------------- |
| ------------------------------------ |
| 姓名 ------- 姓氏 ---- |
|鲍勃----------价值----------- |
| 年龄 ----------------------------- |
| 30 ------------------------------- |
| ---------- 地址 ------------- |
| ------------------------------------ |
| 街道 ------- 邮政编码 - |
|价值----------价值--------- |
..等等,就像登记表一样, 正如你可以看到我需要获得的值,是在下一行(标题下)。
如何使用LinqToExcel.dll执行此操作。 如果我在工作表中有一个CheckBox,我如何获得所选值(已选中或未选中)。
我的代码(c#.net)
var rows = from c in excel.WorksheetNoHeader(sheetName)
select c;
foreach (var item in rows)
{
string aux = item[0].Value.ToString();
}
泰
答案 0 :(得分:0)
我理解你的excel文件看起来应该是这样的
我实现了一些代码来读取这条记录,但我认为它不仅仅适用于一条记录。 正如你所看到的,我正在迭代到行集并避免奇数行,假设它们是标题。
我希望这适合你!
namespace Demo.Stackoverflow
{
using System;
using System.Collections.Generic;
using System.Linq;
using LinqToExcel;
public class Person
{
public string Name { get; set; }
public string LastName { get; set; }
public int Age { get; set; }
}
class Program
{
static void Main(string[] args)
{
LoadExcel();
Console.ReadLine();
}
private static void LoadExcel()
{
var directorio = System.IO.Path.Combine(System.IO.Directory.GetCurrentDirectory(), "Book.xls");
var book = new ExcelQueryFactory(directorio);
var rows = from c in book.WorksheetNoHeader()
select c;
List<Person> people = new List<Person>();
int i = 1;
foreach (var row in rows)
{
if (i % 2 == 0)
{
if (people.Count != 0 && people.Last().Age == 0)
{
people.Last().Age = Convert.ToInt32(row[0].Value.ToString());
}
else
{
Person per = new Person()
{
Name = row[0].Value.ToString(),
LastName = row[1].Value.ToString()
};
people.Add(per);
}
}
i++;
}
}
}
}