fpSpread1 简单用法
//如果汇总的话直接可在模板里面填写公式,不过要有三行空行才行 比如SUM(A1,A2,A3)
fpSpread1.Sheets[0].RowCount = 30;
fpSpread1.Sheets[0].ColumnCount = 15;
yclCheckManager cm = new yclCheckManager();
DataSet ds= cm.getMaterialCheckProject(deliverNum);
string pro_code = "";
Aspose.Cells.Workbook workbook = new Aspose.Cells.Workbook();
workbook.Open(Application.StartupPath + @"\Templates\原物料检验报告.xlt");
sheet = workbook.Worksheets[0];
if (ds.Tables[0].Rows.Count>0)
{
sheet.Cells["C5"].PutValue(ds.Tables[0].Rows[0]["p_name"].ToString());//赋值
sheet.Cells["C6"].PutValue(ds.Tables[0].Rows[0]["shouHuoCode"].ToString());
pro_code = ds.Tables[0].Rows[0]["pro_code2"].ToString();
sheet.Cells["C4"].PutValue(ds.Tables[0].Rows[0]["pro_code"].ToString());
sheet.Cells["O4"].PutValue(ds.Tables[0].Rows[0]["shouNum"].ToString());
sheet.Cells["O5"].PutValue(ds.Tables[0].Rows[0]["goodNum"].ToString());
sheet.Cells["O6"].PutValue(ds.Tables[0].Rows[0]["inDate"].ToString());
}
DataTable dt2=cm.get_Material(pro_code);
if (dt2.Rows.Count>0)
{
sheet.Cells["H4"].PutValue(dt2.Rows[0]["material"].ToString());
}
if (ds.Tables[1].Rows.Count>0)
{
sheet.Cells["H5"].PutValue(ds.Tables[1].Rows[0]["product"].ToString());
}
sheet.Cells["L13"].PutValue(DateBasicInfo.userMessage.userName + " / " + DateTime.Now);
sheet.Cells.ImportDataTable(ds.Tables[2], false, "A10");
for (int i = 0; i < ds.Tables[2].Rows.Count; i++)
{
sheet.Cells.Merge(9 + i,1,1,2);//合并单元格
sheet.Cells.Merge(9 + i, 4,1,4);
sheet.Cells.Merge(9 + i, 8,1, 4);
}
MemoryStream ms = workbook.SaveToStream();
ms.Seek(0, SeekOrigin.Begin);
fpSpread1.OpenExcel(ms);
ms.Close();
fpSpread1.Sheets[0].RowCount = lastindex;
fpSpread1.Sheets[0].ColumnCount = 14;
//工段小计列合并
int sameNum = 0;
int gongduanNum = 0;
float sumnum7 = 0;
float sumnum8 = 0;
float sumnum9 = 0;
float sumnum10 = 0;
try
{
for (int i = 0; i < lastindex; i++)
{
if (fpSpread1.ActiveSheet.Cells[i, 0].Text.Contains("小计"))
fpSpread1.ActiveSheet.AddSpanCell(i, 0, 1, 3);
if (i > 3)
{
if (fpSpread1.ActiveSheet.Cells[i - 1, 0].Text == fpSpread1.ActiveSheet.Cells[i, 0].Text)
{
gongduanNum++;
}
else
{
if (gongduanNum > 0)
{
fpSpread1.ActiveSheet.AddSpanCell(i - gongduanNum - 1, 0, gongduanNum + 1, 1);
gongduanNum = 0;
}
}
if (fpSpread1.ActiveSheet.Cells[i - 1, 1].Text == fpSpread1.ActiveSheet.Cells[i, 1].Text)
{
sameNum++;
sumnum7 += float.Parse(fpSpread1.ActiveSheet.Cells[i - 1, 7].Text == "" ? "0" : fpSpread1.ActiveSheet.Cells[i - 1, 7].Text);//数据汇总
sumnum8 += float.Parse(fpSpread1.ActiveSheet.Cells[i - 1, 8].Text == "" ? "0" : fpSpread1.ActiveSheet.Cells[i - 1, 8].Text);
sumnum9 += float.Parse(fpSpread1.ActiveSheet.Cells[i - 1, 9].Text == "" ? "0" : fpSpread1.ActiveSheet.Cells[i - 1, 9].Text);
sumnum10 += float.Parse(fpSpread1.ActiveSheet.Cells[i - 1, 10].Text == "" ? "0" : fpSpread1.ActiveSheet.Cells[i - 1, 10].Text);
}
else
{
if (sameNum > 0)
{
sumnum7 += float.Parse(fpSpread1.ActiveSheet.Cells[i - 1, 7].Text == "" ? "0" : fpSpread1.ActiveSheet.Cells[i - 1, 7].Text);
fpSpread1.ActiveSheet.Cells[i - sameNum - 1, 7].Value = sumnum7;
fpSpread1.ActiveSheet.AddSpanCell(i - sameNum - 1, 7, sameNum + 1, 1);
sumnum8 += float.Parse(fpSpread1.ActiveSheet.Cells[i - 1, 8].Text == "" ? "0" : fpSpread1.ActiveSheet.Cells[i - 1, 8].Text);
fpSpread1.ActiveSheet.Cells[i - sameNum - 1, 8].Value = sumnum8;
fpSpread1.ActiveSheet.AddSpanCell(i - sameNum - 1, 8, sameNum + 1, 1);
sumnum9 += float.Parse(fpSpread1.ActiveSheet.Cells[i - 1, 9].Text == "" ? "0" : fpSpread1.ActiveSheet.Cells[i - 1, 9].Text);
fpSpread1.ActiveSheet.Cells[i - sameNum - 1, 9].Value = sumnum9;
fpSpread1.ActiveSheet.AddSpanCell(i - sameNum - 1, 9, sameNum + 1, 1);
sumnum10 += float.Parse(fpSpread1.ActiveSheet.Cells[i - 1, 10].Text == "" ? "0" : fpSpread1.ActiveSheet.Cells[i - 1, 10].Text);
fpSpread1.ActiveSheet.Cells[i - sameNum - 1, 10].Value = sumnum10;
fpSpread1.ActiveSheet.AddSpanCell(i - sameNum - 1, 10, sameNum + 1, 1);
fpSpread1.ActiveSheet.AddSpanCell(i - sameNum - 1, 1, sameNum + 1, 1);
sameNum = 0;
sumnum7 = 0;
sumnum8 = 0;
sumnum9 = 0;
sumnum10 = 0;
}
}
}
}
}
catch (Exception ex)
{
}
fpSpread1 简单用法的更多相关文章
- CATransition(os开发之画面切换) 的简单用法
CATransition 的简单用法 //引进CATransition 时要添加包“QuartzCore.framework”,然后引进“#import <QuartzCore/QuartzCo ...
- jquery.validate.js 表单验证简单用法
引入jquery.validate.js插件以及Jquery,在最后加上这个插件的方法名来引用.$('form').validate(); <!DOCTYPE html PUBLIC " ...
- NSCharacterSet 简单用法
NSCharacterSet 简单用法 NSCharacterSet其实是许多字符或者数字或者符号的组合,在网络处理的时候会用到 NSMutableCharacterSet *base = [NSMu ...
- [转]Valgrind简单用法
[转]Valgrind简单用法 http://www.cnblogs.com/sunyubo/archive/2010/05/05/2282170.html Valgrind的主要作者Julian S ...
- Oracle的substr函数简单用法
substr(字符串,截取开始位置,截取长度) //返回截取的字 substr('Hello World',0,1) //返回结果为 'H' *从字符串第一个字符开始截取长度为1的字符串 subst ...
- Ext.Net学习笔记19:Ext.Net FormPanel 简单用法
Ext.Net学习笔记19:Ext.Net FormPanel 简单用法 FormPanel是一个常用的控件,Ext.Net中的FormPanel控件同样具有非常丰富的功能,在接下来的笔记中我们将一起 ...
- TransactionScope简单用法
记录TransactionScope简单用法,示例如下: void Test() { using (TransactionScope scope = new TransactionScope()) { ...
- WPF之Treeview控件简单用法
TreeView:表示显示在树结构中分层数据具有项目可展开和折叠的控件 TreeView 的内容是可以包含丰富内容的 TreeViewItem 控件,如 Button 和 Image 控件.TreeV ...
- listActivity和ExpandableListActivity的简单用法
http://www.cnblogs.com/limingblogs/archive/2011/10/09/2204866.html 今天自己简单的总结了listActivity和Expandable ...
随机推荐
- jxls导出EXCEL模板
http://jxls.sourceforge.net/ InputStream templateInput = null; InputStream in = null; OutputStream o ...
- SignalR的坑爹细节
好吧!SignalR的确是好用,照着官网的例子自己敲了一遍,死活得不到效果... 检查了半天,抱着试一试的心态吧原来在服务端大写开头的Hub类和大写开头的方法在客户端调用的时候,全部改成小写,一刷新, ...
- B - ACboy needs your help(动态规划,分组背包)
B - ACboy needs your help Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & ...
- jquery_核心_(1)
1.data([key],[value]) 概述 在元素上存放或读取数据,返回jQuery对象. 当参数只有一个key的时候,为读取该jQuery对象对应DOM中存储的key对应的值,值得注意的是,如 ...
- Android底部导航栏创建——ViewPager + RadioGroup
原创文章,引用请注明出处:http://www.cnblogs.com/baipengzhan/p/6270201.html Android底部导航栏有多种实现方式,本文详解其中的ViewPager ...
- 《C++ Primer》之重载操作符与转换(下)
转换与类类型 可用一个实参调用的非 explicit 构造函数定义一个隐式转换.当提供了实参类型的对象而需要一个类类型的对象时,编译器将使用该转换.这种构造函数定义了到类类型的转换.除了定义到类类型的 ...
- C#未将对象引用设置到对象的实例
未将对象引用设置到对象的实例,这个错误的意思是对象为null,但你还要去取里面的值,所以计算机就不干了.解决办法一般是:用一个你不能确定是不是为null的对象时,尽量做个判断.if(object!=n ...
- ssh proxy配置
在.ssh目录下新建config文件,并添加以下内容: Host 10.100.101.123 ProxyCommand=nc -X 5 -x [proxyip:proxyport] %h %p
- CSS3秘笈:第十章
CSS的transform.transition和animation属性 1.transform(倾斜):利用transform属性可以使导航栏稍微倾斜,或者使图片在访问者的鼠标经过它时放大两倍,甚至 ...
- MC 在1分钟图拿出5分钟,15分钟,30分钟,1小时的K线
using System; using System.Drawing; using System.Linq; using System.Collections; namespace PowerLang ...