ASP读取EXCEL有某一列的数据读取不到,显示为空?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ASP读取EXCEL有某一列的数据读取不到,显示为空?相关的知识,希望对你有一定的参考价值。
ASP读取EXCEL有某一列的数据读取不到,为了易于查看,我简化了代码。
<% '以下实例中excel文件名为:Book1.xls,工作表名为:sheet1Set xls_Rs = Server.CreateObject("ADODB.Recordset")xlsSql="select * from [sheet1$] order by 序 asc" xls_Rs.Open xlsSql,xlsConn,1,1%> <tr><% for i=0 to xls_Rs.Fields.Count-1
%> <td width="1" bgcolor="#CCCCCC"></td> <td height="28" width="80px" bgcolor="#ece9d8"><div align="center"><% =xls_Rs(i).Name %></div></td><% next%> <td width="1" bgcolor="#CCCCCC"></td> </tr>
<%do while Not xls_Rs.EOF%> <tr height="28"><% for i=0 to xls_Rs.Fields.Count-1%> <td width="1" bgcolor="#CCCCCC"></td> <td valign="bottom"><% =xls_Rs(i) %></td><% next%>
<td width="1" bgcolor="#CCCCCC"></td> </tr><% xls_Rs.MoveNextLoopxls_Rs.close%>
<td width="1" bgcolor="#CCCCCC"></td> <td valign="bottom"><% =xls_Rs(i) %></td><%
next%> </tr><% xls_Rs.MoveNextLoop
%>
如图,画圈的地方本来应该有数据的,可以读取不到。
1、原来的单元格是由公式计算得出的,你可以查看原公式自行计算得出结果;
2、原始的数据就是空的;追问
所有数据都是系统导出来的,没有任何公式。
我上面不是说了吗“本应该有”。谢谢
追答你把Excel文件上传一下,一看就知道咋回事了
参考技术A 是否有报错?对应的名称,位置是否都正确?还有就是excel文件必须是2003版本的,不然不识别的!怎么读取DataTable某一列的值?然后用c#代码判断是不是有重复数据?linq还是怎么做呢?
public static void cs()System.Data.DataTable dt = new System.Data.DataTable();
dt.Rows.Add("");
var quer = from tb in dt.AsEnumerable()
group tb by tb.Field<string>("xx") into x
select new
a=x.Key,
b=x
;
foreach(var c in quer)
int i = 0;
foreach(var d in c.b)
i++;
if(i>1)
//有重复
for (int i = 0; i < dt.Rows.Count;i++ )
var qu = from tb in dt.AsEnumerable()
where tb.Field<string>("xx") == dt.Rows[i]["xx"].ToString()
select tb;
if (qu.Count() > 1)
//有重复
两种方法 看你喜欢哪种
参考技术A
DataTable dt = new DataTable();
var q = from item in dt.AsEnumerable()
select item.Field<string>("").Distinct();
if (q.Count() < dt.Rows.Count)
//有重复
以上是关于ASP读取EXCEL有某一列的数据读取不到,显示为空?的主要内容,如果未能解决你的问题,请参考以下文章
用java代码实现读取Excel中每个sheet页的内容,并且要与其他的Excel中某一列的值进行