有一个名为C:\logistic.xls的Excel表格,用C#连接并读取相关数据。由于和读取Access的源代码在同一个文件,尽量避免引起冲突。
最近开始学习C#,而且第一次接触COM和OLEDB,请前辈帮忙指点一下,最好写出源代码。
另外哪里有C#和EXCEL编程的相关资料啊,不胜感激。

解决方案 »

  1.   

    <%@ Page Language="C#" Debug="true" %>
    <%@ Import Namespace="System.Data"%>
    <%@ Import Namespace="System.Data.OleDb"%><script runat="server">private DataSet CreateDataSource(){
    string strConn;
    strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" +
    "Data Source=C:\\Inetpub\\wwwroot\\contacts.xls;"+
    "Extended Properties=Excel 8.0;";
    OleDbConnection conn = new OleDbConnection(strConn);
    OleDbDataAdapter myCommand = new OleDbDataAdapter("SELECT * FROM [ContactList$]", strConn);
    DataSet myDataSet = new DataSet();
    myCommand.Fill(myDataSet);
    return myDataSet;
    }
    public void Page_Load(Object sender, EventArgs e){
    if (!IsPostBack) {
    mygrid.DataSource = CreateDataSource();
    mygrid.DataBind();
    }}
    </script>
    <center>
    <form runat="server">
    <asp:datagrid runat="server" AutoGenerateColumns="false"
    width="500" id="mygrid"><HeaderStyle BorderColor="White" BackColor="black"
    ForeColor="White"
    Font-Bold="True"
    Font-Name="Arial"
    Font-Size="9" HorizontalAlign="Center"/><ItemStyle   BorderColor=""
    BackColor="#FFFFF0"
    ForeColor="Black"
    Font-Name="Arial"
    Font-Size="8"
    Font-Bold="False" HorizontalAlign="Center"/><Columns><asp:BoundColumn HeaderText="姓名" ReadOnly="true" DataField="姓名"/>
    <asp:BoundColumn HeaderText="性别" ReadOnly="true" DataField="性别"/>
    <asp:BoundColumn HeaderText="Email" ReadOnly="true" DataField="地址"/>
    </Columns></asp:datagrid>
    </form>
      

  2.   

    请教:net_lover(孟子E章)
    "SELECT * FROM [ContactList$]" 中where 子句怎么写?比如:查询excel第一列中 等于 ‘abc’的记录
      

  3.   

    SELECT * FROM [ContactList$] where 列名=abc列名默认为第一行各个单元格数据