找回密码
 立即注册

QQ登录

只需一步,快速开始

sakeryu
初级会员   /  发表于:2012-2-29 16:03:00
11#
补充一下,因为项目比较大,不好分拆出程序demo,所以这样发图,不知道能不能明白。版主可以使用excel做一个类似的表格,然后用spread打开试试。
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2012-2-29 17:09:00
12#
sakeryu 你好:
下面是我的测试 Demo :
Demo 描述:
1.Excel 中有三行,第三行分别为所在列的合计如图:

png

png

2.工程中添加 2 个 Spread,fpSpread1 用来读取 Excel 文件,fpSpread2 用来读取 fpSpread1中 合计单元格的值。
3.Demo 下载:
formulatest.zip (119.76 KB, 下载次数: 194)
回复 使用道具 举报
sakeryu
初级会员   /  发表于:2012-3-1 09:36:00
13#
10#中的“保存”就是保存到数据库中,现在问题就是程序没有取得那个合计单元格的值,所以无法保存数据库中,库里面实际是0值,因此审核的时候从数据库提取出的值也是0值。

我把我的excel表传上来给你试试吧。

shenhejieguo那个xls是我导出了,里面左或者右为0值的,基本都是我所描述的那种问题。用spread打开表后,用程序去提取一下相应单元格的值保存到数据库中,看看能不能取出存上吧。
谢谢。
回复 使用道具 举报
sakeryu
初级会员   /  发表于:2012-3-1 09:38:00
14#
刚才没压缩,附件没传上去。不好意思。

决算表2011js.zip

53.86 KB, 下载次数: 224

zip

回复 使用道具 举报
iceman
社区贡献组   /  发表于:2012-3-1 10:30:00
15#

回复 14# sakeryu 的帖子

sakeryu 你好,

1.我这里可以正确取值,并且存储,没有重现该问题。为了更快的解决问题,建议发个重现问题的 Demo。

2.下面是我的测试代码:
  1.         private void button1_Click(object sender, EventArgs e)
  2.         {
  3.             this.fpSpread1.OpenExcel(@"E:\shenhejieguo.xls");
  4.         }
  5.         private void button2_Click(object sender, EventArgs e)
  6.         {
  7.             SqlCommand dbComm = new SqlCommand();
  8.             string sqlCommand=string.Format("insert into table1 (col1,col2,col3) values({0},{1},{2})",1,1,this.fpSpread1.Sheets[0].Cells[5,6].Value);
  9.             dbComm.CommandText = sqlCommand;
  10.             dbComm.Connection = dbCon;
  11.             try
  12.             {
  13.                 dbCon.Open();
  14.                 dbComm.ExecuteNonQuery();
  15.                 dbCon.Close();
  16.             }
  17.             catch (Exception)
  18.             {
  19.                 throw;
  20.             }
  21.             finally
  22.             {
  23.                 dbCon.Close();
  24.             }
  25.         }
复制代码
回复 使用道具 举报
sakeryu
初级会员   /  发表于:2012-3-1 10:59:00
16#
不好意思,版主你是不是打开的shenhejieguo.xls文件啊?
应该打开”zjk000303 - 副本.xls“这个文件,这才是原始报表。
shenhejieguo.xls是请你参考哪些单元格有那种问题。ok?
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2012-3-1 11:25:00
17#

回复 16# sakeryu 的帖子

sakeryu 你好,
1.使用 Spread 打开 “zjk000303 - 副本.xls”,读取利润表中的 D7 和 F7 单元格,可以正常读取并且存储,需要注意的是利润表表单的索引为 1,下面是我的代码。

  1.         private void button1_Click(object sender, EventArgs e)
  2.         {
  3.             this.fpSpread1.OpenExcel(@"E:\zjk000303 - 副本.xls");
  4.         }

  5.         private void button2_Click(object sender, EventArgs e)
  6.         {
  7.             SqlCommand dbComm = new SqlCommand();
  8.             string sqlCommand = string.Format("insert into table1 (col1,col2,col3) values({0},{1},'{2}')", this.fpSpread1.Sheets[1].Cells[6, 3].Value, 1, this.fpSpread1.Sheets[1].Cells[6, 5].Value);
  9.             dbComm.CommandText = sqlCommand;
  10.             dbComm.Connection = dbCon;
  11.             try
  12.             {
  13.                 dbCon.Open();
  14.                 dbComm.ExecuteNonQuery();
  15.                 dbCon.Close();
  16.             }
  17.             catch (Exception)
  18.             {

  19.                 throw;
  20.             }
  21.             finally
  22.             {
  23.                 dbCon.Close();
  24.             }
  25.         }
复制代码
回复 使用道具 举报
12
您需要登录后才可以回帖 登录 | 立即注册
返回顶部