- 浏览: 256297 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
smartzjp:
可以理解为如果每行数据的所有列都有值,而且列名都是相等的,这个 ...
hbase关于bloom filter使用 -
xiao_feng68:
flash.system.Security.loadPolic ...
关于flex跨域加载MODULE的问题 -
sulanyan29:
挺详细的.
linux之iptables -
liuzhiqiangruc:
这个只要dos2unix 就可以了吧
linux日常工作技巧 -
四个石头:
...
简化的Flex4结构图
http://www.cnblogs.com/salonliudong/archive/2008/06/26/1230255.html
1. 技术要点
1.1. Excel试验:
A. Excel嵌入网页的方法。
1. 在后台用流的方式返回给前台页面展现;
2. 在后台讲Excel格式数据定好保存到本地,在前台页面用html标签加载展示;
B. Excel显示格式的控制。
1. Excel单元格格式设置,默认为常规类型;
2. 上下标格式的控制;
3. 单元格水平垂直对齐方式;
4. 单元格边框设置;
5. 单元格合并;
6. 字体设置,包括字体的颜色、大小、粗体、斜体、字体、下划线等;
7. 冻结行列;
8. 公式栏的显示与隐藏;
9. 行标题和列表题的显示与隐藏;
10. 网格的显示与隐藏;
11. 水平滚动条和垂直滚动条的显示与隐藏;
12. Sheet页的显示与隐藏;
C. 向Excel中填充数据,并导出为临时文件。
1.2. OWC试验:
A. OWC组件在web页面展示的方法。
1. 将OWC中Sheet导出为本地Excel文件,再将导出的文件呈现到Web页面;
2. 后台把配置好的Sheet直接以流文件方式返回到Web页面展现;
3. 用html标签将OWC展现在Web页面,加载后台程序导出到本地的文件(xml、html、csv格式)来显示数据;
B. 在OWC中的电子表格类中填充数据的方法。
C. OWC中显示数据格式的控制。
1. 电子表格外观控制:工具栏的显示、Office图标的显示、列标题的显示、行标题的显示、水平滚动条的显示、垂直滚动条的显示、网格的显示、网格颜色设置;
2. 单元格水平对齐方式;
3. 单元格垂直对齐方式;
4. 单元格合并;
5. 单元格字体设置:字体、字形、字号、字体颜色、字体加粗、下划线(多种样式);
6. 单元格边框设置;
2. 主要模块
2.1. Excel
1、Excel嵌入网页的方法:
A、将后台定制好的Excel文件在后台用流的方式返回给前台页面展现,代码如下:
Response.ClearContent();
Response.ClearHeaders();
Response.ContentType = "application/vnd.ms-excel";
Response.AddHeader("Content-Disposition", "inline;filename='我的文件'");
Response.WriteFile(FileName);//FileName为Excel文件所在地址
Response.Flush();
Response.Close();
运行效果:整个页面都充满了Excel。
B、在前台页面框架中直接加在,代码:
<iframe id="myExcelHtml" src ="Nomarl.xls" width = "600" height ="300" align ="middle"> </iframe>
运行效果:可随意控制Excel在页面的显示位置。
2、 Excel显示格式控制。
A、单元格格式设置,默认为常规类型;Excel
代码:
Excel.Range r = mySheet.get_Range(mySheet.Cells[1, 1], mySheet.Cells[DT.Rows.Count + 2, DT.Columns.Count - 3]);
//设置单元格格式为文本类型,文本类型可设置上下标
r.NumberFormat = "@";
//设置单元格格式为数值类型,小数点后2位
r.NumberForma = "0.00_ "
//设置单元格格式为货币类型,小数点后2位
r.NumberForma = "¥#,##0.00;¥-#,##0.00"
//设置单元格格式为会计专用类型,小数点后2位
r.NumberForma = _"_ ¥* #,##0.00_ ;_ ¥* -#,##0.00_ ;_ ¥* ""-""??_ ;_ @_ "
//设置单元格格式为日期类型
r.NumberForma = "yyyy-m-d"
//设置单元格格式为时间类型
r.NumberForma = "[$-F400]h:mm:ss AM/PM"
//设置单元格格式为百分比类型,小数点后2位
r.NumberForma = "0.00%"
//设置单元格格式为分数类型,分母为一位数
r.NumberForma = "# ?/?"
//设置单元格格式为科学技术类型,小数位数为2
r.NumberForma = "0.00E+00"
//设置单元格格式为特殊类型
r.NumberForma = "000000"
B、上下标格式的控制;
代码:
//控制输出样式为下标
mySheet.get_Range(mySheet.Cells[i + 3, DT.Columns.Count - 3], mySheet.Cells[i + 3, DT.Columns.Count - 3]).get_Characters(a.Length + 1, b.Length).Font.Subscript = true;
//控制输出样式为上标
mySheet.get_Range(mySheet.Cells[i + 3, DT.Columns.Count - 3], mySheet.Cells[i + 3, DT.Columns.Count - 3]).get_Characters(a.Length + b.Length + 1, c.Length).Font.Superscript = true;
C、 单元格水平垂直对齐方式;
代码:
//单元格水平,垂直居中
r.HorizontalAlignment = Excel.XlHAlign.xlHAlignCenter;
r.VerticalAlignment = Excel.XlVAlign.xlVAlignCenter;
上面代码中,枚举XLHAlign的值还有:
// 右对齐
xlHAlignRight,
// 左对齐.
xlHAlignLeft,
// 两端对齐.
xlHAlignJustify,
// 分散对齐(缩进)
xlHAlignDistributed,
// 居中对齐
xlHAlignCenter,
// 依照数据类型对齐,常规
xlHAlignGeneral,
// 填充
xlHAlignFill,
// 跨列对齐.
xlHAlignCenterAcrossSelection = 7,
枚举XLVAlign的值还有:
// 靠上对齐
xlVAlignTop,
//两端对齐.
xlVAlignJustify = -4130,
//分散对齐.
xlVAlignDistributed,
//居中对齐.
xlVAlignCenter,
//靠下对齐.
xlVAlignBottom = -4107,
D、 单元格边框设置;
代码:
//设置边框
Excel.Range r = mySheet.get_Range(mySheet.Cells[1, 1], mySheet.Cells[DT.Rows.Count + 2, DT.Columns.Count - 3]);
r.Borders.LineStyle = Excel.XlLineStyle.xlContinuous;
枚举XlLineStyle中还有下面线形:
//没边框线
xlLineStyleNone,
//双线.
xlDouble,
//点状线.
xlDot,
//虚线.
xlDash,
//连续线.
xlContinuous,
//点线交互型
xlDashDot,
//两点一线型
xlDashDotDot,
//斜线.
xlSlantDashDot,
E、单元格合并
用get_Range方法获取要合并的单元格,再设置MergeCells属性的值进行合并。
代码:
//合并单元格
myExcel.get_Range(myExcel.Cells[1, 1], myExcel.Cells[1,4]).MergeCells = true;
F、字体设置
先用get_Range方法选中要设置字体的某个单元格或者或者直接用get_Characters方法直接选中要设置的字符进行设置;
代码:
//加粗字体
myExcel.get_Range(myExcel.Cells[1, 1], myExcel.Cells[1, 1]).Font.Bold = true;
//设置字体大小
myExcel.get_Range(myExcel.Cells[1,1],myExcel.Cells[1,1]).Font.Size = 16;
//设置字体的颜色
myExcel.get_Range(myExcel.Cells[1, 1], myExcel.Cells[1, 1]).Font.ColorIndex = 3;
//设置字体
myExcel.get_Range(myExcel.Cells[1, 1], myExcel.Cells[1, 1]).Font.Name = "隶书";
//设置成斜体
myExcel.get_Range(myExcel.Cells[1, 1], myExcel.Cells[1, 1]).Font.Italic = true;
//设置下划线
myExcel.get_Range(myExcel.Cells[1, 1], myExcel.Cells[1, 1]).Font.Underline = true;
G、冻结行列
用get_Range方法获取单元格,再设置其Freezepanes属性为true,就把该单元格右上方的行和列都冻结了,取消冻结将其值设为false即可。
//冻结行列
myExcel.get_Range(myExcel.Cells[3,1],myExcel.Cells[3,1]).Activate();
myExcel.ActiveWindow.FreezePanes = true;
H、 公式输入栏的隐藏
//设置是否显示Excel公式输入栏,默认为true
myExcel.DisplayFormulaBar = false;
I、 列标题与行标题的隐藏
//设置是否显示行和列的标题,默认为true
myExcel.ActiveWindow.DisplayHeadings = false;
J、网格的隐藏
//设置是否显示网格,默认为true
myExcel.ActiveWindow.DisplayGridlines = false;
K、 水平、垂直滚动条的隐藏
//设置是否显示水平滚动条
myExcel.ActiveWindow.DisplayHorizontalScrollBar = false;
//设置是否显示垂直滚动条
myExcel.ActiveWindow.DisplayVerticalScrollBar = false;
L、页的隐藏Sheet
//设置是否显示Sheet页
myExcel.ActiveWindow.DisplayWorkbookTabs = false;
经过格式设置以后,展示在页面上的效果如下图:
3、 向Excel中填充数据,并保存为临时文件
代码:
Excel.Application myExcel = new Excel.Application();
//打开模板文件
myExcel.Application.Workbooks.Open(mode.FullName, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing);
//选中有数据的Cells
Excel.Workbook myBook = myExcel.Workbooks[1];
Excel.Worksheet mySheet = (Excel.Worksheet)myBook.Worksheets[1];
Excel.Range r = mySheet.get_Range(mySheet.Cells[1, 1], mySheet.Cells[DT.Rows.Count + 2, DT.Columns.Count - 3]);
r.Select();
//不单独显示Excel,最后在IE中显示
myExcel.Visible = false;
//第一行为报表的标题
myExcel.Cells[1, 1] = "用模板导出的报表";
//逐行写入数据,数组中第一行为报表的列标题
for (int i = 0; i < DT.Columns.Count - 3; i++)
{
myExcel.Cells[2, 1 + i] = DT.Columns[i].Caption; ;
}
//在当前目录下指定一个临时文件
string FileName = Server.MapPath("~") + """Temp.xls";
if (File.Exists(FileName))
{
File.Delete(FileName);
}
myExcel.Save(FileName);
mySheet.Cells.Clear() ;
//设置不出现保存提示框
myBook.Saved = true;
myExcel.Application.Workbooks.Close();
发表评论
-
解决eclipse工程不能自动编译的问题
2016-11-24 17:47 470内容来自:http://blog.sina.com.cn/ ... -
rabbitMQ之发布/订阅
2016-11-02 11:24 494发布消息: public class ... -
使用slf4j时logback与log4j包冲突问题
2016-08-09 18:11 1037slf4j只是一个日志接口框架 logback与lo ... -
jprofiler远程连接
2016-08-04 17:27 9511、客户端和服务端都需要安装jprofiler 2、客户端 ... -
JVM堆内存和非堆内存
2016-06-20 14:25 849来自:http://xstarcd.github.io/wi ... -
java监控工具
2012-10-19 09:28 1002jps:虚拟机进程状态工 ... -
java6 JVM参数选项大全 中文版
2012-10-19 08:37 1030来自:http://kenwublog.com/docs/ja ... -
tomcat--https
2012-06-15 09:58 1185http://flysky7931.iteye.com/blo ... -
关于TOMCAT6线程池配置
2011-11-16 09:31 14187找了一篇文章,通过线程池的方式可以提高性能。 2、线程池配置( ... -
drools相关学习资料
2011-04-20 19:29 864附件是drools5使用中文文档,以及测试程序 以此作 ... -
weblogic发布常见错误之一
2009-06-29 02:17 29641)无法通过IP地址进行访问,在linux下 解决:Linu ... -
在线电子表格spreadsheet操作实现
2008-12-15 15:37 4584最近公司的业务需要在浏览器中使用mircosoft的owc中的 ... -
java之jxl边框
2008-11-24 14:22 3420在使用jxl中,对边框的使用需要注意,采用模板输入的excel ... -
jvm调优
2008-07-10 09:55 1165转自:http://pengjiaheng.spaces.li ... -
jxl读写excel
2008-06-20 15:08 4292jxltest.java import java.io.Fil ... -
关于weblogic集群配置与apache2.x代理服务配置
2007-12-06 10:26 3254本文主要介绍了: 1,集群服务器的配置方法 2,apache充 ... -
关于编码
2007-11-09 15:49 1225关于字符编码问题的简单整理 iso8859-1 属于单字节编码 ...
相关推荐
OWC中SpreadSheet控件的操作方法集合
owc11 Spreadsheet 详细使用
OWC_Spreadsheet属性说明以及应用举例
本人在网上收集的关于OWC中对电子表格的操作
owc11(spreadsheet)在vc6.0下面应用比较麻烦,直接拖上去,运行又会死机,本程序自动创建,加了常用的设置单元格,读单元格,排序,查找等功能,增加了常用事件:OnEndEditSpreadsheet,BeforeContextMenuSpreadsheet...
OWC10下载OWC10下载OWC10下载
OWC11.msi OWC11.DLL
一个owc11 网络图形编程实例。讲述了一个关于owc各种版本的编程。是值得收藏的。
owc散点图owc散点图owc散点图owc散点图owc散点图owc散点图owc散点图owc散点图owc散点图
OWC是MS Office的组件,可以用来为ASP、ASP.NET等网页程序和应用程序生成统计图表,本资源是OWC的使用帮助文档。
一外很完整的学习OWC的应用试例 OWC应用例子 OWC应用例子
owc 10.0 参考手册 chm格式
C#中使用 Microsoft.Office.Interop.Owc11 com组件把数据导出excel文件
包括 owc11的独立于office的安装包,已经验证可以使用, owc11封装好的基于C#的类,可以方便调用,代码清晰易懂,
owc介绍及帮助文档,自己整理的。可以参考看一看。
资源名称:ASP操作owc资源截图: 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。
完整的OWC帮助,9个文件, OWCDCH10.chm 图表组件设计时参考 OWCDPL10.chm 数据透视表组件设计时参考 OWCDSS10.chm 电子表格组件设计时参考 OWCFUN10.chm 电子表格组件内置功能参考 OWCVBA10.chm 所有组件的编程参考
OFFICE OWC11 图表控件下载 owc11.msi
owc11.dll是MS Office组件的一个使用帮助文档,主要用来为ASP、ASP.NET等网页程序和应用程序生成统计图表。如果你的电脑弹出提示“缺少owc11.dll”或者“没有找到owc11.dll”等错误信息,请下载使用它可以帮助您解决...
owc生成报表 owc源码展示 owc可直接运行 owc考试分析报表Demo owc可执行,支持63种报表形式,在我的自定义控件中只实现了13中,如果有需求的话还可以联系我,我再把没有写完的部分完成,我的邮箱:nailwl@163.com ...