JavaScript写excel

最近同事让我帮忙做一个用javascript写excel的小工具,由于对javascript不是很熟,以前经常使用java和Apache的POI框架来写excel,从来没有使用过javascript来写excel,于是上网找了一下,发现相关资料很多,但是例子能够正常用的非常少,或多或少都有点小问题,参考网上例子加上自己调试之后,把自己的demo程序分享出来。

JavaScript通过ActiveX控件写excel,因此下面的例子代码只能在IE浏览器中运行:

//write excel
function writeExcel()
{
	var oApplication; 
	//使用Excel的ActiveX控件
    var xls = new ActiveXObject("Excel.Application");
	//设置Excel是否通过ActiveX控件可见,设置为true,javascript会打开本地的excel程序
	//设置为false,javascript会在后台创建excel,而用户不可见
    xls.Visible = false;
	//新增工作簿
	var xlBook = xls.Workbooks.Add;
	//创建工作表
	var oSheet = xlBook.Worksheets(1); 
	//设置第1列至第4列的列宽
	oSheet.Columns('1:4').ColumnWidth = 42;
	//设置第1行至第2行的行高
	oSheet.Rows('1:2').RowHeight = 30;

	//写第一行数据
	//高级选择:选择第1行第1列至第1行第4列的单元格
	oSheet.Range(oSheet.cells(1,1),oSheet.Cells(1,4)).Select;
	//将选择区域的字体设置为粗体
	xls.Selection.Font.Bold = true;
	//设置选择区域的边框
	xls.Selection.Borders.Weight = 2;
	//设置选择区域单元格背景色:1-黑色,2-白色,3-红色,4-绿色,5-蓝色,6-黄色,7-粉红色,8-天蓝色,9-酱土色
	xls.Selection.Interior.ColorIndex = 5;
	//设置选择区域单元格水平对齐方式:1-常规,2-靠左,3-居中,4-靠右,5-填充 6-两端对齐,7-跨列居中,8-分散对齐
	xls.Selection.HorizontalAlignment = 3;
	//设置选择区域单元格垂直对齐方式:1-靠上,2-居中,3-靠下,4-两端对齐,5-分散对齐
	xls.Selection.VerticalAlignment = 2;
	//为单元格赋值
	oSheet.Cells(1,1).value = "<NE> information";;
	oSheet.Cells(1,2).value = "Where to find this information";
	oSheet.Cells(1,3).value = "Additional information";
	oSheet.Cells(1,4).value = "Notes from <NE>";
	
	//第二行数据
	//高级选择:选择第2行第1列至第2行第4列的单元格
	oSheet.Range(oSheet.cells(2,1),oSheet.Cells(2,4)).Select;
	xls.Selection.Borders.Weight = 2;
	//设置单元格内容自动换行
	xls.Selection.WrapText=true;
    oSheet.Cells(2,1).value = "<NE> version";
    oSheet.Cells(2,2).value = "NetAct and NE compatibility information table (in this document).For more information, see section Upgrading and downgrading an integrated <NE>";
    oSheet.Cells(2,3).value = "Check if the <NE> version is supported in current NetAct release.If the NE is already integrated with NetAct and its version is not correct, you must upgrade or downgrade the NE.";
	oSheet.Cells(2,4).value = "";
    
	//保存excel工作表,注意:路径必须是双反斜线(\\)
	oSheet.SaveAs("D:\\jiangtch\\Desktop\\New Folder\\Test.xls" );
	//推出程序
    xls.quit();
}
除了高级选择选择指定区域单元格之外,还可以直接对单元格设置格式如下:

oSheet.Cells(1,1).WrapText=true;
oSheet.Cells(1,1).Borders.Weight = 2;

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值