javascript 操作Word和Excel的实现代码_Javascript教程-查字典教程网
javascript 操作Word和Excel的实现代码
javascript 操作Word和Excel的实现代码
发布时间:2016-12-30 来源:查字典编辑
摘要:1.保存html页面到word复制代码代码如下:单元格1单元格2单元格3单元格4单元格合并testfunctionMakeWord(){va...

1.保存html页面到word

复制代码 代码如下:

<HTML>

<HEAD>

<title>

</title>

</HEAD>

<body>

<form id="form">

<table id = "PrintA" width="100%" border="1" cellspacing="0" cellpadding="0" >

<TR>

<TD>单元格1</TD>

<TD>单元格2</TD>

<TD>单元格3</TD>

<TD>单元格4</TD>

</TR>

<TR>

<TD colSpan=4><font color="red" face="Verdana">单元格合并</FONT></TD>

</TR>

</TABLE>

<BR>

<table id = "Test" width="100%">

<tr>

<td><font color="red">test</FONT></td>

</tr>

</table>

</form>

<input type="button" value="导出页面到Word">

<SCRIPT LANGUAGE="javascript">

function MakeWord()

{

var word = new ActiveXObject("Word.Application");

// var doc = word .documents.open("c:test.doc"); //此处为打开已有的模版

var doc = word .Documents.Add("",0,1);//不打开模版直接加入内容

var Range=doc.Range();

var sel = document.body.createTextRange();

sel.moveToElementText(form);//此处form是页面form的id

sel.select();

sel.execCommand("Copy");

Range.Paste();

word .Application.Visible = true;

alert("s");

word.Application.Selection.InlineShapes.AddPicture("c:m20.gif");

alert("n");

doc .saveAs("c:ba.doc"); //存放到指定的位置注意路径一定要是“”不然会报错

}

</SCRIPT>

</body>

</html>

2.用JS生成WORD

复制代码 代码如下:

<script>

function wordcontorl(){

alert("1111")

var WordApp=new ActiveXObject("Word.Application");

var wdCharacter=1

var wdOrientLandscape = 1

WordApp.Application.Visible=true;

var myDoc=WordApp.Documents.Add();

WordApp.ActiveDocument.PageSetup.Orientation = wdOrientLandscape

WordApp. Selection.ParagraphFormat.Alignment=1 //1居中对齐,0为居右

WordApp. Selection.Font.Bold=true

WordApp. Selection.Font.Size=20

WordApp. Selection.TypeText("我的标题");

WordApp. Selection.MoveRight(wdCharacter);//光标右移字符

WordApp.Selection.TypeParagraph()//插入段落

WordApp. Selection.Font.Size=12

WordApp. Selection.TypeText("副标题"); //分行插入日期

WordApp.Selection.TypeParagraph()//插入段落

var myTable=myDoc.Tables.Add (WordApp.Selection.Range, 8,7) //8行7列的表格

//myTable.

var aa = "我的列标题"

var TableRange; //以下为给表格中的单元格赋值

for (i= 0;i<7;i++)

{

with (myTable.Cell(1,i+1).Range)

{

font.Size = 12;

InsertAfter(aa);

ColumnWidth =4

}

}

for (i =0;i<7;i++)

{

for (n =0;n<7 ;n++)

{

with (myTable.Cell(i+2,n+1).Range)

{font.Size = 12;

InsertAfter("bbbb");

}

}

}

row_count = 0;

col_count = 0

myDoc.Protect(1)

}

wordcontorl()

</script>

***************************************************************************************************

3.遍历导出到word

***************************************************************************************************

1、遍历导出每个文本框内的内容。

复制代码 代码如下:

<script language="javascript">

function OpenWord(){//导出word

var txt="txt";

for(i=0;i<table1.rows.length;i++)//遍历导出图表和文字

{

txt="txt"+jilu[i];

myRange =mydoc.Range(myRange.End-1,myRange.End);//设定起始点

var sel=Layer1.document.body.createTextRange();

//sel.moveToElementText(table1);

sel.moveToElementText(document.all[txt]);

sel.select();

Layer1.document.execCommand('Copy');

sel.moveEnd('character');

myRange.Paste();

myRange =mydoc.Range(myRange.End-1,myRange.End);

myRange.InsertAfter("n");

ExcelSheet.ActiveWindow.View.TableGridlines = false;//隐藏虚框

}

}

</script>

2、拷贝table1内的内容到word

复制代码 代码如下:

<script language="javascript">

function OpenWord(){//导出word

Layer1.style.border=0;

ExcelSheet = new ActiveXObject('Word.Application');

ExcelSheet.Application.Visible = true;

var mydoc=ExcelSheet.Documents.Add('',0,0);

myRange =mydoc.Range(0,1);

myRange =mydoc.Range(myRange.End-1,myRange.End);//设定起始点

var sel=Layer1.document.body.createTextRange();

sel.moveToElementText(table1);

sel.select();

Layer1.document.execCommand('Copy');

sel.moveEnd('character');

myRange.Paste();

myRange =mydoc.Range(myRange.End-1,myRange.End);

myRange.InsertAfter("n");

ExcelSheet.ActiveWindow.View.TableGridlines = false;

}

</script>

**************************************************************************************************

4.操作excel

**************************************************************************************************

复制代码 代码如下:

<%@ page c %>

<h1>content</h1>

<html>

<head>

<script language="javascript" type="text/javascript">

function MakeExcel() {

var i, j, n;

try {

var xls = new ActiveXObject("Excel.Application");

}

catch(e) {

alert( "要打印该表,您必须安装Excel电子表格软件,同时浏览器须使用“ActiveX 控件”,您的浏览器须允许执行控件。请点击【帮助】了解浏览器设置方法!");

return "";

}

xls.visible =true; // 设置excel为可见

var xlBook = xls.Workbooks.Add;

var xlsheet = xlBook.Worksheets(1);

<>

xlsheet.Range(xlsheet.Cells(1,1),xlsheet.Cells(1,7)).mergecells=true;

xlsheet.Range(xlsheet.Cells(1,1),xlsheet.Cells(1,7)).value="发卡记录";

xlsheet.Range(xlsheet.Cells(1,1),xlsheet.Cells(1,3)).Interior.ColorIndex=5; // 设置底色为蓝色

// xlsheet.Range(xlsheet.Cells(1,1),xlsheet.Cells(1,6)).Font.ColorIndex=4; // 设置字体色

// xlsheet.Rows(1). Interior .ColorIndex = 5 ;//设置底色为蓝色 设置背景色 Rows(1).Font.ColorIndex=4

<>

xlsheet.Rows(1).RowHeight = 25;

<>

xlsheet.Rows(1).Font.Size=14;

<>

xlsheet.Rows(1).Font.Name="黑体";

<>

xlsheet.Columns("A:D").ColumnWidth =18;

<>

xlsheet.Columns(2).NumberFormatLocal="@";

xlsheet.Columns(7).NumberFormatLocal="@";

//设置单元格内容自动换行 range.WrapText = true ;

//设置单元格内容水平对齐方式 range.HorizontalAlignment = Excel.XlHAlign.xlHAlignCenter;//设置单元格内容竖直堆砌方式

//range.VerticalAlignment=Excel.XlVAlign.xlVAlignCenter

//range.WrapText = true; xlsheet.Rows(3).WrapText=true 自动换行

//设置标题栏

xlsheet.Cells(2, 1).Value = "卡号";

xlsheet.Cells(2, 2).Value = "密码";

xlsheet.Cells(2, 3).Value = "计费方式";

xlsheet.Cells(2, 4).Value = "有效天数";

xlsheet.Cells(2, 5).Value = "金额";

xlsheet.Cells(2, 6).Value = "所属服务项目";

xlsheet.Cells(2, 7).Value = "发卡时间";

var oTable = document.all['fors:data'];

var rowNum = oTable.rows.length;

for(i = 2; i <= rowNum; i++) {

for (j = 1; j <= 7; j++) {

//html table类容写到excel

xlsheet.Cells(i + 1, j).Value = oTable.rows(i - 1).cells(j - 1).innerHTML;

}

}

<>

// xlsheet.Range(xlsheet.Cells(i, 4), xlsheet.Cells(i-1, 6)).BorderAround , 4

// for(mn=1,mn<=6;mn++) . xlsheet.Range(xlsheet.Cells(1, mn), xlsheet.Cells(i1, j)).Columns.AutoFit;

xlsheet.Columns.AutoFit;

xlsheet.Range( xlsheet.Cells(1,1),xlsheet.Cells(rowNum+1,7)).HorizontalAlignment =-4108;//居中

xlsheet.Range( xlsheet.Cells(1,1),xlsheet.Cells(1,7)).VerticalAlignment =-4108;

xlsheet.Range( xlsheet.Cells(2,1),xlsheet.Cells(rowNum+1,7)).Font.Size=10;

xlsheet.Range( xlsheet.Cells(2,1),xlsheet.Cells(rowNum+1,7)).Borders(3).Weight = 2; //设置左边距

xlsheet.Range( xlsheet.Cells(2,1),xlsheet.Cells(rowNum+1,7)).Borders(4).Weight = 2;//设置右边距

xlsheet.Range( xlsheet.Cells(2,1),xlsheet.Cells(rowNum+1,7)).Borders(1).Weight = 2;//设置顶边距

xlsheet.Range( xlsheet.Cells(2,1),xlsheet.Cells(rowNum+1,7)).Borders(2).Weight = 2;//设置底边距

xls.UserControl = true; //很重要,不能省略,不然会出问题 意思是excel交由用户控制

xls=null;

xlBook=null;

xlsheet=null;

}

</script>

<link href="css/styles3.css" rel="stylesheet" type="text/css"/>

<title>ziyuanweihu</title>

</head>

<body>

<form id="fors" method="post" action="/WebModule/admins/card/showcard.faces" enctype="application/x-www-form-urlencoded">

<table id="fors:top" border="0" cellpadding="0" cellspacing="0" width="100%">

<tbody>

<tr>

<td><img src="images/jiao1.gif" alt="" /></td>

<td></td>

<td><img src="images/jiao2.gif" alt="" /></td>

</tr>

</tbody>

</table>

<table border="0" cellpadding="0" cellspacing="0" width="100%">

<tbody>

<tr>

<td></td>

<td>

<table id="fors:sort" border="0" cellpadding="0" cellspacing="0" width="100%">

<tbody>

<tr>

<td>

<input type="button" name="fors:_id7" value="生成excel文件" />

</td>

</tr>

</tbody>

</table>

<table id="fors:data" border="1" cellpadding="0" cellspacing="1" width="100%">

<thead>

<tr>

<th scope="col"><span id="fors:data:headerText1">卡号</span></th>

<th scope="col"><span id="fors:data:headerText2">密码</span></th>

<th scope="col"><span id="fors:data:headerText3">计费方式</span></th>

<th scope="col"><span id="fors:data:headerText4">有效天数</span></th>

<th scope="col">金额</th>

<th scope="col"><span id="fors:data:headerText6">所属服务项目</span></th>

<th scope="col"><span id="fors:data:headerText7">发卡时间</span></th>

</tr>

</thead>

<tbody>

<tr>

<td>h000010010</td>

<td>543860</td>

<td>计点</td>

<td></td>

<td>2.0</td>

<td>测试项目</td>

<td>2006-06-23 10:14:40.843</td>

</tr>

<tr>

<td>h000010011</td>

<td>683352</td>

<td>计点</td>

<td></td>

<td>2.0</td>

<td>测试项目</td>

<td>2006-06-23 10:14:40.843</td>

</tr>

<tr>

<td>h000010012</td>

<td>433215</td>

<td>计点</td>

<td></td>

<td>2.0</td>

<td>测试项目</td>

<td>2006-06-23 10:14:40.843</td>

</tr>

<tr>

<td>h000010013</td>

<td>393899</td>

<td>计点</td>

<td></td>

<td>2.0</td>

<td>测试项目</td>

<td>2006-06-23 10:14:40.843</td>

</tr>

<tr>

<td>h000010014</td>

<td>031736</td>

<td>计点</td>

<td></td>

<td>2.0</td>

<td>测试项目</td>

<td>2006-06-23 10:14:40.843</td>

</tr>

<tr>

<td>h000010015</td>

<td>188600</td>

<td>计点</td>

<td></td>

<td>2.0</td>

<td>测试项目</td>

<td>2006-06-23 10:14:40.843</td>

</tr>

<tr>

<td>h000010016</td>

<td>363407</td>

<td>计点</td>

<td></td>

<td>2.0</td>

<td>测试项目</td>

<td>2006-06-23 10:14:40.843</td>

</tr>

<tr>

<td>h000010017</td>

<td>175315</td>

<td>计点</td>

<td></td>

<td>2.0</td>

<td>测试项目</td>

<td>2006-06-23 10:14:40.843</td>

</tr>

<tr>

<td>h000010018</td>

<td>354437</td>

<td>计点</td>

<td></td>

<td>2.0</td>

<td>测试项目</td>

<td>2006-06-23 10:14:40.843</td>

</tr>

<tr>

<td>h000010019</td>

<td>234750</td>

<td>计点</td>

<td></td>

<td>2.0</td>

<td>测试项目</td>

<td>2006-06-23 10:14:40.843</td>

</tr>

</tbody>

</table>

</td>

<td></td>

</tr>

</tbody>

</table>

<table id="fors:bottom" border="0" cellpadding="0" cellspacing="0" width="100%">

<tbody>

<tr>

<td>

<img src="images/jiao3.gif" alt=""/>

</td>

<td> </td>

<td>

<img src="images/jiao4.gif" alt=""/>

</td>

</tr>

</tbody>

</table>

<input type="hidden" name="fors" value="fors" />

</form>

</body>

</html>

复制代码 代码如下:

<%--

// ---------------------------------- 1 ----------------------------------

<HTML>

<HEAD>

<TITLE>导出到excel</TITLE>

<META NAME="Generator" C>

<META NAME="Author" C>

<META NAME="Keywords" C>

<META NAME="Description" C>

</HEAD>

<script language="javascript">

function exportExcel(tableid) {

if(typeof(EXPORT_OBJECT)!="object") {

document.body.insertAdjacentHTML("afterBegin","<OBJECT classid='clsid:0002E510-0000-0000-C000-000000000046' id='EXPORT_OBJECT'></Object>");

}

with(EXPORT_OBJECT) {

DataType = "HTMLData";

HTMLData =tableid.outerHTML;

try {

ActiveSheet.Export("d:表格.xls", 0);

alert('成功导出EXCEL表格!');

}

catch (e) {

alert('导出EXCEL表格失败,请确定已安装Excel2000(或更高版本),并且没打开同名xls文件');

}

}

}

</script>

<BODY>

<table id="tableid" border="1">

<tr>

<td>第一个单元格</td>

<td>第二个单元格</td>

<td>第三个单元格</td>

</tr>

<tr>

<td>第四个单元格</td>

<td>第五个单元格</td>

<td>第六个单元格</td>

</tr>

</table>

<input type="button" value="导出EXCEL表格" >

</BODY>

</HTML>

// ---------------------------------- 2 ----------------------------------

<>

<script language="javascript">

function tableToExcel() {

window.clipboardData.setData("Text",document.all('theObjTable').outerHTML);

try {

var ExApp = new ActiveXObject("Excel.Application");

var ExWBk = ExApp.workbooks.add();

var ExWSh = ExWBk.worksheets(1);

ExApp.DisplayAlerts = false;

ExApp.visible = true;

}

catch(e) {

alert("您的电脑没有安装Microsoft Excel软件!");

return false;

}

ExWBk.worksheets(1).Paste;

}

function tableToWord() {

var oWD = new ActiveXObject("Word.Application");

var oDC = oWD.Documents.Add("",0,1);

var oRange =oDC.Range(0,1);

var sel = document.body.createTextRange();

sel.moveToElementText(theObjTable);

sel.select();

sel.execCommand("Copy");

oRange.Paste();

oWD.Application.Visible = true;

}

</script>

<table id="theObjTable">

<tr>

<td>在html页面中</td>

<td>把网页中的表</td>

<td>格内容导入到</td>

<td>word中</td>

<td>也可以导入到excel</td>

</tr>

</table>

<input type="button" value="导入到excel" >

<input type="button" value="导入到word" >

// ---------------------------------- 3 ----------------------------------

--%>

******************************************************************************************************

5.有关用js实现网页中的内容直接转化为excel的方法

******************************************************************************************************

复制代码 代码如下:

<html xmlns:o="urn:schemas-microsoft-com:office:office"

xmlns:x="urn:schemas-microsoft-com:office:excel"

xmlns="http://www.w3.org/TR/REC-html40">

<head>

<meta http-equiv=Content-Type c>

<script>

function out(){

try{

var elTable = document.getElementById("out");

var oRangeRef = document.body.createTextRange();

oRangeRef.moveToElementText( elTable );

oRangeRef.execCommand( "Copy" );

var oXL = new ActiveXObject("Excel.Application")

var oWB = oXL.Workbooks.Add ;

var oSheet = oWB.ActiveSheet ;

oSheet.Paste();

oSheet.Cells.NumberFormatLocal = "@";

oSheet.Columns("D:D").Select

oXL.Selection.ColumnWidth = 20

//oSheet.Columns("A:A").Select

//oSheet.Columns("A").Width = 1000;

oXL.Visible = true;

oSheet = null;

oWB = null;

appExcel = null;

}catch(e){alert(e.description)}

}

</script>

</head>

<body>

<table id ='out'>

<tr>

<td x:str bgcolor="#FF0000">00001</td>

<td x:str>0002</td>

</tr>

<tr>

<td height=18 align=right x:str>00001</td>

<td align=right x:str>000002</td>

</tr>

<tr>

<td x:str>0003</td>

<td x:str>00003</td>

</tr>

</table>

<INPUT type="button" value="Button" id=button1 name=button1 >

</body>

</html>

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新Javascript教程学习
    热门Javascript教程学习
    编程开发子分类