怎么用js将excel中的数据读取后显示到网页中的表格

JavaScript08

怎么用js将excel中的数据读取后显示到网页中的表格,第1张

以前读书的时候绝不会想到会用客户端脚本来实现这些功能,现在却一开始就要用上了,而且还觉得挺实用的。

参考《Windows脚本技术》,应该会有一点收获。

<html xmlns="http://www.w3.org/1999/xhtml" >

<head>

<title>Untitled Page</title>

</head>

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

function importXLS(fileName)

{

objCon = new ActiveXObject("ADODB.Connection")

objCon.Provider = "Microsoft.Jet.OLEDB.4.0"

objCon.ConnectionString = "Data Source=" + fileName + "Extended Properties=Excel 8.0"

objCon.CursorLocation = 1

objCon.Open

var strQuery

//Get the SheetName

var strSheetName = "Sheet1$"

var rsTemp = new ActiveXObject("ADODB.Recordset")

rsTemp = objCon.OpenSchema(20)

if(!rsTemp.EOF)

strSheetName = rsTemp.Fields("Table_Name").Value

rsTemp = null

rsExcel = new ActiveXObject("ADODB.Recordset")

strQuery = "SELECT * FROM [" + strSheetName + "]"

rsExcel.ActiveConnection = objCon

rsExcel.Open(strQuery)

while(!rsExcel.EOF)

{

for(i = 0i<rsExcel.Fields.Count++i)

{

alert(rsExcel.Fields(i).value)

}

rsExcel.MoveNext

}

// Close the connection and dispose the file

objCon.Close

objCon =null

rsExcel = null

}

</script>

</head>

<body>

<input type="file" id="f" />

<input type="button" id="b" value="import" onclick="if(f.value=='')alert('请选择xls文件')else importXLS(f.value)" />

</body>

</html>

trackback:http://hi.baidu.com/netcorner/blog/item/4c35a818788f670635fa41d3.html

通过Javascript操作Excel

function AutomateExcel()

{

// Start Excel and get Application object.

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

oXL.Visible = true

// Get a new workbook.

var oWB = oXL.Workbooks.Add()

var oSheet = oWB.ActiveSheet

// Add table headers going cell by cell.

oSheet.Cells(1, 1).Value = "First Name"

oSheet.Cells(1, 2).Value = "Last Name"

oSheet.Cells(1, 3).Value = "Full Name"

oSheet.Cells(1, 4).Value = "Salary"

// Format A1:D1 as bold, vertical alignment = center.

oSheet.Range("A1", "D1").Font.Bold = true

oSheet.Range("A1", "D1").VerticalAlignment = -4108 //xlVAlignCenter

// Create an array to set multiple values at once.

// Fill A2:B6 with an array of values (from VBScript).

oSheet.Range("A2", "B6").Value = CreateNamesArray()

// Fill C2:C6 with a relative formula (=A2 & " " & B2).

var oRng = oSheet.Range("C2", "C6")

oRng.Formula = "=A2 & " " & B2"

// Fill D2:D6 with a formula(=RAND()*100000) and apply format.

oRng = oSheet.Range("D2", "D6")

oRng.Formula = "=RAND()*100000"

oRng.NumberFormat = "$0.00"

// AutoFit columns A:D.

oRng = oSheet.Range("A1", "D1")

oRng.EntireColumn.AutoFit()

// Manipulate a variable number of columns for Quarterly Sales Data.

DispalyQuarterlySales(oSheet)

// Make sure Excel is visible and give the user control

// of Excel's lifetime.

oXL.Visible = true

oXL.UserControl = true

}

<HTML>

<HEAD>

<TITLE>将页面中指定表格的数据导入到Excel中</TITLE>

<SCRIPT LANGUAGE="javascript">

<!--

function AutomateExcel()

{

var oXL = new ActiveXObject("Excel.Application")//创建应该对象

var oWB = oXL.Workbooks.Add()//新建一个Excel工作簿

var oSheet = oWB.ActiveSheet//指定要写入内容的工作表为活动工作表

var table = document.all.data//指定要写入的数据源的id

var hang = table.rows.length//取数据源行数

var lie = table.rows(0).cells.length//取数据源列数

// Add table headers going cell by cell.

for (i=0i<hangi++){//在Excel中写行

for (j=0j<liej++){//在Excel中写列

//定义格式

oSheet.Cells(i+1,j+1).NumberFormatLocal = "@"

//!!!!!!!上面这一句是将单元格的格式定义为文本

oSheet.Cells(i+1,j+1).Font.Bold = true//加粗

oSheet.Cells(i+1,j+1).Font.Size = 10//字体大小

oSheet.Cells(i+1,j+1).value = table.rows(i).cells(j).innerText//向单元格写入值

}

}

oXL.Visible = true

oXL.UserControl = true

}

//-->

</SCRIPT>

</HEAD>

<BODY>

<table border="0" width="300" id="data" bgcolor="black" cellspacing="1">

<tr bgcolor="white">

<td>编号</td>

<td>姓名</td>

<td>年龄</td>

<td>性别</td>

</tr>

<tr bgcolor="white">

<td>0001</td>

<td>张三</td>

<td>22</td>

<td>女</td>

</tr>

<tr bgcolor="white">

<td>0002</td>

<td>李四</td>

<td>23</td>

<td>男</td>

</tr>

</table>

<input type="button" name="out_excel" onclick="AutomateExcel()" value="导出到excel">

</BODY>

</HTML>

以前读书的时候绝不会想到会用客户端脚本来实现这些功能,现在却一开始就要用上了,而且还觉得挺实用的。

参考《Windows脚本技术》,应该会有一点收获。

<html xmlns="http://www.w3.org/1999/xhtml" >

<head>

<title>Untitled Page</title>

</head>

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

function importXLS(fileName)

{

objCon = new ActiveXObject("ADODB.Connection")

objCon.Provider = "Microsoft.Jet.OLEDB.4.0"

objCon.ConnectionString = "Data Source=" + fileName + "Extended Properties=Excel 8.0"

objCon.CursorLocation = 1

objCon.Open

var strQuery

//Get the SheetName

var strSheetName = "Sheet1$"

var rsTemp = new ActiveXObject("ADODB.Recordset")

rsTemp = objCon.OpenSchema(20)

if(!rsTemp.EOF)

strSheetName = rsTemp.Fields("Table_Name").Value

rsTemp = null

rsExcel = new ActiveXObject("ADODB.Recordset")

strQuery = "SELECT * FROM [" + strSheetName + "]"

rsExcel.ActiveConnection = objCon

rsExcel.Open(strQuery)

while(!rsExcel.EOF)

{

for(i = 0i<rsExcel.Fields.Count++i)

{

alert(rsExcel.Fields(i).value)

}

rsExcel.MoveNext

}

// Close the connection and dispose the file

objCon.Close

objCon =null

rsExcel = null

}

</script>

</head>

<body>

<input type="file" id="f" />

<input type="button" id="b" value="import" onclick="if(f.value=='')alert('请选择xls文件')else importXLS(f.value)" />

</body>

</html>

trackback:http://hi.baidu.com/netcorner/blog/item/4c35a818788f670635fa41d3.html

通过Javascript操作Excel

function AutomateExcel()

{

// Start Excel and get Application object.

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

oXL.Visible = true

// Get a new workbook.

var oWB = oXL.Workbooks.Add()

var oSheet = oWB.ActiveSheet

// Add table headers going cell by cell.

oSheet.Cells(1, 1).Value = "First Name"

oSheet.Cells(1, 2).Value = "Last Name"

oSheet.Cells(1, 3).Value = "Full Name"

oSheet.Cells(1, 4).Value = "Salary"

// Format A1:D1 as bold, vertical alignment = center.

oSheet.Range("A1", "D1").Font.Bold = true

oSheet.Range("A1", "D1").VerticalAlignment = -4108 //xlVAlignCenter

// Create an array to set multiple values at once.

// Fill A2:B6 with an array of values (from VBScript).

oSheet.Range("A2", "B6").Value = CreateNamesArray()

// Fill C2:C6 with a relative formula (=A2 & " " & B2).

var oRng = oSheet.Range("C2", "C6")

oRng.Formula = "=A2 & " " & B2"

// Fill D2:D6 with a formula(=RAND()*100000) and apply format.

oRng = oSheet.Range("D2", "D6")

oRng.Formula = "=RAND()*100000"

oRng.NumberFormat = "$0.00"

// AutoFit columns A:D.

oRng = oSheet.Range("A1", "D1")

oRng.EntireColumn.AutoFit()

// Manipulate a variable number of columns for Quarterly Sales Data.

DispalyQuarterlySales(oSheet)

// Make sure Excel is visible and give the user control

// of Excel's lifetime.

oXL.Visible = true

oXL.UserControl = true

}

<HTML>

<HEAD>

<TITLE>将页面中指定表格的数据导入到Excel中</TITLE>

<SCRIPT LANGUAGE="javascript">

<!--

function AutomateExcel()

{

var oXL = new ActiveXObject("Excel.Application")//创建应该对象

var oWB = oXL.Workbooks.Add()//新建一个Excel工作簿

var oSheet = oWB.ActiveSheet//指定要写入内容的工作表为活动工作表

var table = document.all.data//指定要写入的数据源的id

var hang = table.rows.length//取数据源行数

var lie = table.rows(0).cells.length//取数据源列数

// Add table headers going cell by cell.

for (i=0i<hangi++){//在Excel中写行

for (j=0j<liej++){//在Excel中写列

//定义格式

oSheet.Cells(i+1,j+1).NumberFormatLocal = "@"

//!!!!!!!上面这一句是将单元格的格式定义为文本

oSheet.Cells(i+1,j+1).Font.Bold = true//加粗

oSheet.Cells(i+1,j+1).Font.Size = 10//字体大小

oSheet.Cells(i+1,j+1).value = table.rows(i).cells(j).innerText//向单元格写入值

}

}

oXL.Visible = true

oXL.UserControl = true

}

//-->

</SCRIPT>

</HEAD>

<BODY>

<table border="0" width="300" id="data" bgcolor="black" cellspacing="1">

<tr bgcolor="white">

<td>编号</td>

<td>姓名</td>

<td>年龄</td>

<td>性别</td>

</tr>

<tr bgcolor="white">

<td>0001</td>

<td>张三</td>

<td>22</td>

<td>女</td>

</tr>

<tr bgcolor="white">

<td>0002</td>

<td>李四</td>

<td>23</td>

<td>男</td>

</tr>

</table>

<input type="button" name="out_excel" onclick="AutomateExcel()" value="导出到excel">

</BODY>

</HTML>

js1983.com子域名大全 js1983.com二级域名 js1983.com域名解析查询

www.js1983.com 更多子域名 最新域名查询 www.cwzkm.com www.6c36ac.com www.fcefb.com www.8090.com my1991.com ...

查询网

js1983.com变成那个了 - 移动设备专家答疑 - 百度问一问

5分钟内回复 多年专业经验

js1983.com变成那个了

马上提问

js.498.net

125人正在咨询

js娱乐官方网

129人正在咨询

js实现深度拷贝

128人正在咨询

js.498.net

125人正在咨询

优选电子数码答主在线答疑

在线

林丽敏导师

数码发烧友

活跃之星

4.0

“回答很专业”

已帮助3441人

擅长:移动设备购买,家用电器,移动设备软件使用

提问

在线

网络信息小助手

数码发烧友

4.3

“回答有帮助”

已帮助143人

擅长:数码影音及办公类电器,移动设备软件使用,工程技术

提问

更多答主

百度问一问

www.js1983.com服务器iP www.js1983.com域名解析 www.js1983.com...

www.js1983.com服务器iP: 当前解析: 网站劫持真机检测 历史解析记录: 2022-03-07---2023-01-240.0.0.0 2022-04-19---2023-01-24104.21...

查询网

js1983.com备案信息 js1983.com备案查询

js1983.com备案信息 2021-12-10---2023-01-17未备案 域名备案监控 最新域名查询 smgmail.shimaogroup.com www49719a.com