请问如何向Excel第一行是合并单元格动态写入数据

我的Excel模板的第一行是合并单元格,需要动态改变第一行的内容,即下图的红色部分的内容,想改写(修改)为如2011年第二学期或其它内容

请问如何操作?
十分感谢!
qi0225 -
  • sandyyang - 2个月前

    引用 11 楼 net_lover 的回复:
    你的 这个文件应该这样写就可以了,我已经测试过 了

    <%@ Page Language="C#" Debug="true" %>

    <%@ Import Namespace="System.Data" %>
    <%@ Import Namespace="System.Data.OleDb" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 ……
    十分感谢!
    但我的:“用户等级: 五角用户 您能发表 0-200分”,最多只能200分,请见谅。

  • shenzian - 2个月前

    你的 这个文件应该这样写就可以了,我已经测试过 了

    <%@ Page Language="C#" Debug="true" %>

    <%@ Import Namespace="System.Data" %>
    <%@ Import Namespace="System.Data.OleDb" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <script runat="server">
      
      String ConnectionString = String.Empty;
      protected void Page_Load(object sender, EventArgs e)
      {
      ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("~/excel.xls") + ";Extended Properties='Excel 8.0;HDR=No;IMEX=2;'";
       
      }

      protected void UpDate_Click(object sender, EventArgs e)
      {
      using (OleDbConnection cn = new OleDbConnection(ConnectionString))
      {
      cn.Open();
      String sql = "UPDATE [Sheet1$A1:A1] SET F1 = '第二学期'";
      OleDbCommand cmd = new OleDbCommand(sql, cn);
      cmd.ExecuteNonQuery();
      cn.Dispose();
      }
      }

      
    </script>
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head id="Head1" runat="server">
    </head>
    <body>
      <form id="form1" runat="server">
      <asp:Button ID="UpDate" Text="更新数据" runat="server" OnClick="UpDate_Click" />
      </form>
    </body>
    </html>

  • user616 - 2个月前

    注意写法 [Sheet1$A1:A1]

    另外,你应该使用 Update而不是Insert

    参见
    使用 ADO.NET 更新 Excel 中指定单元格的内容

  • Zeniorelo - 2个月前

    我还是不会!如能解决加分到300,

  • Emurfiree - 2个月前

    引用 7 楼 kkxxllasasas 的回复:
    参考
    http://hi.baidu.com/onion327/blog/item/f20b9b504f607412367abef2.html
    多谢了!你给的是C#的方法
    但我是用在asp.net上的,

  • 3357501 - 2个月前

    参考
    http://hi.baidu.com/onion327/blog/item/f20b9b504f607412367abef2.html

  • nanstnanst - 2个月前

    引用 5 楼 kkxxllasasas 的回复:
    还是调用com组件 操作单元格吧
    问题是这个我不会。
    请提供简要代码,多谢~!

  • cisjoy - 2个月前

    还是调用com组件 操作单元格吧

  • playgirl - 2个月前

    半年前我也问了此问题,直至现在还是不能解决!
    请高手帮忙帮忙,
    十分感谢~!

  • hamelnrat - 2个月前

    请帮助

  • MAMZEXCURCE - 2个月前

    引用 1 楼 asd1308855 的回复:
    向A1位置插入内容就可以了·

    不行~!A1不是字段名!
    protected void Button1_Click(object sender, EventArgs e)
      {
      try
      {
    string filePath = Server.MapPath("~/" + "demo.xls");
    OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filePath + ";Extended Properties='Excel 8.0;'");
     OleDbCommand cmd = new OleDbCommand("INSERT INTO [Sheet1$](A1)VALUES(@a)", conn);
     cmd.Parameters.AddWithValue("@a", "第一行是合并单元格2012");
    using (conn)
      {
      conn.Open()
    OleDbCommand cmd = new OleDbCommand("INSERT INTO [Sheet1$](A1)VALUES(@a)", conn);
     cmd.Parameters.AddWithValue("@a", "第一行是合并单元格2012");
    cmd.ExecuteNonQuery();
    }
    }
      catch (Exception ex)
      {
      Label1.Text = ex.Message;
      }
      }

    提示错误:INSERT INTO 语句包含下列未知的字段名: 'A1'。确定键入的名称是正确的, 然后重试。

  • Loumshoobby - 2个月前

    向A1位置插入内容就可以了·