`

转:JavaScript中的ActiveXObject控制Excel的方法

阅读更多

转载链接:JavaScript中的ActiveXObject控制Excel的方法

 

一、使用JavaScript中的ActiveXObject填充并设置Excel格式

//1.创建实例并创建工作表
var XLObj = new ActiveXObject("Excel.Application");//创建Excel实例
var xlBook = XLObj.Workbooks.Add; //新增工作簿
var ExcelSheet = xlBook.Worksheets(1); //创建工作表

//2.保存表格
ExcelSheet.SaveAs("C:\\TEST.XLS");

//3.使 Excel 通过 Application 对象可见
ExcelSheet.Application.Visible = true;
//或者ExcelSheet.Visible=true;

//4.打印
xlBook.PrintOut;或者:ExcelSheet.PrintOut;

//5.关闭
xlBook.Close(savechanges=false);
//或者ExcelSheet.Close(savechanges=false);

//6.结束进程
ExcelSheet.Application.Quit();
//或者XLObj.Quit(); XLObj=null;

//7.页面设置
ExcelSheet.ActiveSheet.PageSetup.LeftMargin= 2/0.035; //页边距 左2厘米
ExcelSheet.ActiveSheet.PageSetup.RightMargin = 3/0.035; //页边距 右3厘米,
ExcelSheet.ActiveSheet.PageSetup.TopMargin = 4/0.035; //页边距 上4厘米,
ExcelSheet.ActiveSheet.PageSetup.BottomMargin = 5/0.035; //页边距 下5厘米
ExcelSheet.ActiveSheet.PageSetup.HeaderMargin = 1/0.035; //页边距 页眉1厘米
ExcelSheet.ActiveSheet.PageSetup.FooterMargin = 2/0.035; //页边距 页脚2厘米
ExcelSheet.ActiveSheet.PageSetup.CenterHeader = "页眉中部内容";
ExcelSheet.ActiveSheet.PageSetup.LeftHeader = "页眉左部内容";
ExcelSheet.ActiveSheet.PageSetup.RightHeader = "页眉右部内容";
ExcelSheet.ActiveSheet.PageSetup.CenterFooter = "页脚中部内容";
ExcelSheet.ActiveSheet.PageSetup.LeftFooter = "页脚左部内容";
ExcelSheet.ActiveSheet.PageSetup.RightFooter = "页脚右部内容";

//8.对单元格操作,带*部分对于行,列,区域都有相应属性
ExcelSheet.ActiveSheet.Cells(row,col).Value = "内容"; //设置单元格内容
ExcelSheet.ActiveSheet.Cells(row,col).Borders.Weight = 1; //设置单元格边框*()
//设置单元格底色*(1-黑色,2-白色,3-红色,4-绿色,5-蓝色,6-黄色,7-粉红色,8-天蓝色,9-酱土色..可以多做尝试)
ExcelSheet.ActiveSheet.Cells(row,col).Interior.ColorIndex = 1; 

//设置单元格背景样式*(1-无,2-细网格,3-粗网格,4-斑点,5-横线,6-竖线..可以多做尝试)
ExcelSheet.ActiveSheet.Cells(row,col).Interior.Pattern = 1; 

//设置字体颜色*(与上相同)
ExcelSheet.ActiveSheet.Cells(row,col).Font.ColorIndex = 1; 
ExcelSheet.ActiveSheet.Cells(row,col).Font.Size = 10; //设置为10号字*
ExcelSheet.ActiveSheet.Cells(row,col).Font.Name = "黑体"; //设置为黑体*
ExcelSheet.ActiveSheet.Cells(row,col).Font.Italic = true; //设置为斜体*
ExcelSheet.ActiveSheet.Cells(row,col).Font.Bold = true; //设置为粗体*
ExcelSheet.ActiveSheet.Cells(row,col).ClearContents; //清除内容*
ExcelSheet.ActiveSheet.Cells(row,col).WrapText=true; //设置为自动换行*

//水平对齐方式枚举* (1-常规,2-靠左,3-居中,4-靠右,5-填充 6-两端对齐,7-跨列居中,8-分散对齐)
ExcelSheet.ActiveSheet.Cells(row,col).HorizontalAlignment = 3; 

//垂直对齐方式枚举*(1-靠上,2-居中,3-靠下,4-两端对齐,5-分散对齐)
ExcelSheet.ActiveSheet.Cells(row,col).VerticalAlignment = 2; 

//9.行,列有相应操作:
ExcelSheet.ActiveSheet.Rows(row).
ExcelSheet.ActiveSheet.Columns(col).
ExcelSheet.ActiveSheet.Rows(startrow+":"+endrow). //如Rows("1:5")即1到5行
ExcelSheet.ActiveSheet.Columns(startcol+":"+endcol). //如Columns("1:5")即1到5列

//10.区域有相应操作:
XLObj.Range(startcell+":"+endcell).Select;
//如Range("A2:H8")即A列第2格至H列第8格的整个区域

//11.合并单元格
XLObj.Range(startcell+":"+endcell).MergeCells = true;
//如Range("A2:H8")即将A列第2格至H列第8格的整个区域合并为一个单元格
//或者:XLObj.Range("A2",XLObj.Cells(8, 8)).MergeCells = true;

//12.设置行高与列宽
ExcelSheet.ActiveSheet.Columns(startcol+":"+endcol).ColumnWidth = 22;//设置从firstcol到stopcol列的宽度为22
ExcelSheet.ActiveSheet.Rows(startrow+":"+endrow).RowHeight = 22;//设置从firstrow到stoprow行的宽度为22

//13.设置该区域为自适应高度和宽度
var myrange=oSheet.Range(oSheet.Cells(2,1),oSheet.Cells(2,6));
myRange.Columns.AutoFit();//好像不太管用
myRange.Rows.AutoFit();//好像不太管用

 

二、使用JavaScript将表格内容导出到Excel的方式

//1.整个表格拷贝到EXCEL中
function CopyTable(tableid){
	//整个表格拷贝到EXCEL中
	var curTbl = document.getElementById(tableid);
	var oXL = new ActiveXObject("Excel.Application");
	var oWB = oXL.Workbooks.Add();//创建AX对象excel
	var oSheet = oWB.ActiveSheet;//获取workbook对象
	var sel = document.body.createTextRange();//激活当前sheet
	sel.moveToElementText(curTbl);//把表格中的内容移到TextRange中
	sel.select();//全选TextRange中内容
	sel.execCommand("Copy");//复制TextRange中内容
	oSheet.Paste();//粘贴到活动的EXCEL中
	oXL.Visible = true;//设置excel可见属性
}

//2.把单元格内容拷贝到Excel,并设置单元格格式.
function method2(tableid){ 
	var curTbl = document.getElementById(tableid);
	var oXL = new ActiveXObject("Excel.Application");//创建AX对象excel
	var oWB = oXL.Workbooks.Add();//获取workbook对象
	var oSheet = oWB.ActiveSheet;//激活当前sheet
	var Lenr = curTbl.rows.length;
	var y=document.getElementById('dropYear');
	var m=document.getElementById('dropMonth');
	//取得表格行数
	oSheet.Cells( 1, 1).value='商户名称:工商银行商城';
	oSheet.Range(oSheet.Cells(1,1),oSheet.Cells(1,6)).Merge()
	oSheet.Cells(2,1).value='日期:'+y.options[y.selectedIndex].value+'-'+m.options[m.selectedIndex].value;
	oSheet.Range(oSheet.Cells(2,1),oSheet.Cells(2,6)).Merge()
	oSheet.Cells( 3, 1).value='销售情况'
	oSheet.Range(oSheet.Cells(3,1),oSheet.Cells(3,6)).Merge()
	oSheet.Cells( 3, 1).HorizontalAlignment=3;
	oSheet.Cells( 3, 1).Font.Size=14;
	oSheet.Cells( 3, 1).Font.Bold = true;
	oSheet.Range(oSheet.Cells(4,1),oSheet.Cells(4,6)).Merge()
	oSheet.Cells(4,1).value=document.getElementById('lbMessage').innerText;
	for (i = 0; i < Lenr; i++){
		var Lenc = curTbl.rows(i).cells.length;
		for (j = 0; j < Lenc; j++){//取得每行的列数
			oSheet.Cells(i + 5, j + 1).value = curTbl.rows(i).cells(j).innerText;//赋值
		}
	}
	oSheet.Cells(i+6,2).value=document.getElementById('hidSum').value;
	oSheet.Columns.AutoFit();
	oSheet.Rows.AutoFit();
	oSheet.Rows(4).RowHeight = 30;
	oXL.Visible = true;//设置excel可见属性
	oXL.Quit();
	oXL = null;
	idTmr = window.setInterval("Cleanup();",1);//强制释放资源
}

//3.清除Excel资源
function Cleanup(){
	window.clearInterval(idTmr);
	CollectGarbage();
}

 

三、使用JavaScript按照表格格式复制内容到剪切板

 

//在Excel中进行粘贴
function copytable(){
	var content='';
	var tb=document.getElementById('GVmain');
	var rows=tb.rows;
	for(var i=0;i<rows.length;i++){
		var cells=rows[i].cells;
		for(var j=0;j<cells.length;j++){
			content +=cells[j].innerText.toString()+'\t';
		}
		content +='\n';
	}
	if(content!=''){
		clipboardData.setData("text",content);
		alert("复制成功!")
	}
}

 

分享到:
评论

相关推荐

    使用JavaScript中的ActiveXObject填充并设置Excel格式

    ### 使用JavaScript中的ActiveXObject填充并设置Excel格式 ...以上就是通过JavaScript中的ActiveXObject操作Excel的一些常用方法。掌握这些方法可以帮助开发者更高效地处理Excel文档,从而提高工作效率。

    基于JavaScript的JSP页面数据导出Excel.pdf

    在这个步骤中,JavaScript使用store对象的getAt方法获取数据,并将数据填入Excel工作簿中。JavaScript可以根据用户的需求获取不同的数据,并将其填入报表中。 知识点六: concrete implementation 在具体实现中,...

    JavaScript 导入 excel 兼容IE11

    总的来说,JavaScript在IE11中导入Excel文件需要考虑浏览器的兼容性和安全性,同时利用像ActiveXObject这样的特有对象或第三方库来实现功能。在实际项目中,确保对不同浏览器进行充分的测试,以提供最佳的用户体验。

    java\JavaScript利用ActiveX导出Excel,Word .doc

    JavaScript可以通过创建ActiveXObject实例来访问和控制ActiveX控件。在本文中,我们看到了`new ActiveXObject("Excel.Application")`和`new ActiveXObject("Word.Application")`,这分别用于创建Excel和Word的应用...

    JavaScript中使用ActiveXObject操作本地文件夹的方法

    在JavaScript中,尤其是在Windows平台上的Internet Explorer浏览器环境中,可以通过ActiveXObject来访问和操作本地文件系统。ActiveXObject是一种接口,允许JavaScript与COM(组件对象模型)组件进行交互,从而调用...

    javascript+vba实现打印excel功能

    在这里,JavaScript被用来控制浏览器的行为,比如在IE(Internet Explorer)中执行特定的操作,如打印Excel文件。 VBA则是Microsoft Office内置的编程环境,允许用户自定义应用程序的功能,如Excel中的宏。通过VBA...

    javascript操作EXCEL

    JavaScript 操作 Excel 是指使用 JavaScript 语言来操作和控制 Excel 应用程序。通过使用 ActiveXObject 对象,可以在客户端操作 Excel 文件,而不需要访问服务器端。 在使用 JavaScript 操作 Excel 时,需要在...

    javascript 操作Word和Excel的实现代码

    在JavaScript中,可以利用`ActiveXObject`对象创建Word应用程序实例,并通过该实例进行进一步的操作。 ```javascript var word = new ActiveXObject("Word.Application"); ``` 这里创建了一个名为`word`的对象,它...

    js操作excel

    本文将详细介绍如何使用JavaScript中的`ActiveXObject`来创建、编辑和保存Excel文件。 #### 二、准备工作 在使用JavaScript操作Excel之前,需要确保用户的计算机上已经安装了Microsoft Office,并且支持使用OLE ...

    JS获取Excel数据并显示到页面(IE)

    在JavaScript中获取Excel数据并将其显示到网页上,特别是在IE浏览器环境下,涉及到多个技术要点。以下将详细解析这个过程,并提供一些关键知识点。 首先,我们需要理解JavaScript与Excel数据交互的基本原理。由于...

    JavaScript HTML内容导出Excel兼容所有浏览器

    在JavaScript和HTML中导出内容至Excel是一种常见的需求,尤其在数据分析、报表生成等领域。由于浏览器之间的兼容性差异,实现这一功能需要采取不同的策略。本文将深入探讨如何使用JavaScript和HTML来实现一个兼容...

    如何使用js 打开并设置excel某些单元格的格式例子

    在本例中,我们将使用ActiveX控件来控制Excel。 - **Excel.Application对象**:这是Excel的核心对象,通过它我们可以访问Excel的各种属性和方法,从而实现对Excel文件的操作。 #### 实现步骤 1. **检查浏览器兼容性...

    js导出excel的方法

    本文将详细介绍几种使用JavaScript实现导出数据到Excel的方法,包括利用ActiveX对象的方式以及纯JavaScript的方式。 #### 方法一:使用ActiveX对象(仅适用于IE浏览器) 此方法基于Internet Explorer提供的ActiveX...

    Js操作Excel常用方法.pdf

    - 在内容中,我们看到`var XLObj = new ActiveXObject("Excel.Application");`,这表示创建了一个Excel应用程序的实例。在JavaScript中,ActiveX对象允许脚本控制COM对象,进而操作Excel。 - `var xlBook = XLObj....

    javascript 操作Word和Excel的实现代码.docx

    ### JavaScript操作Word和Excel的实现方法 #### 一、JavaScript操作Word文档 ##### 1.1 保存HTML页面到Word文档 在Web开发中,有时我们需要将网页内容导出为Word文档格式,以便用户能够方便地下载或打印。下面是...

    java,jsp,javascript中如何实现将统计表格保存成excel文件

    在Java、JSP和JavaScript中实现将统计表格保存为Excel文件是一个常见的需求,尤其是在数据分析和报表展示场景下。以下是一个详细的步骤和示例代码来帮助理解这个过程。 1. **前端JavaScript部分**: JavaScript...

    javascript 生成excel.doc

    JavaScript 可以使用 ActiveXObject 来生成 Excel 文档,下面是详细的知识点: 1. 创建 Excel 应用程序对象 使用 `var XLObj = new ActiveXObject("Excel.Application");` 创建 Excel 应用程序对象。 2. 新建工作...

    javascript Excel操作知识点

    这些知识点涵盖了JavaScript通过ActiveXObject与Excel交互的基础操作,但请注意,这种方法仅在IE浏览器中有效,且由于ActiveXObject的限制,它不适用于其他浏览器环境,如Chrome、Firefox等。在现代Web开发中,通常...

    table导出excel(JS法-所见即所得)

    Table导出Excel(JS法-所见即所得) 本文将详细介绍如何使用...这种方法可以实现快速导出表格数据到Excel文件中。 本文详细介绍了如何使用JavaScript实现将HTML表格导出为Excel文件,并对相关技术进行了详细解释。

Global site tag (gtag.js) - Google Analytics