20070924 excel vb 版本
http://www.yippeesoft.com
vb引用EXCEL:
和普通的数据库操作差不多
strFilename="d:\\123.xls"
strSheetName="table"
strRange="A1:IV1"
Set cn = New ADODB.Connection
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & strFileName & ";Extended Properties=\’Excel 8.0;HDR=No\’"
Set ra = New ADODB.Recordset
ra.Open "select * from [" & strSheetName & "$" & strRange & "]", cn, adOpenStatic,adLockPessimistic
ra.addnew
ra.fields(0)="daf"
..
ra.update
Dim excl As excel.Application
Dim xlBook As excel.Workbook
Dim xlSheet As excel.Worksheet
Dim fso As New FileSystemObject
Set excl = New excel.Application
xlSheet.SaveAs (App.path & "\\aa87.xls")
Set excl = CreateObject("Excel.Application")
excl.Workbooks.add
et xlSheet = excl.Workbooks(1).Worksheets("Sheet1")
xlSheet.Activate
xlSheet.SaveAs (App.path & "\\aa87.xls")
Set xlBook = excl.Workbooks.add(App.path & "\\aa87.xls")
Set xlSheet = xlBook.Worksheets(1)
dim i as integer
dim s as string
for i=1 to xx.length
xlSheet.Cells(1, i) = s
next
xlBook.Close (True) \’关闭EXCEL工作簿
excl.Quit \’关闭EXCEL
Set excl = Nothing
Set xlSheet = Nothing
说简单一点就是四步三种操作
Dim xlsReport As Excel.Application \’定义变量
xls.Workbooks.Open App.Path & "\\文件名.xls" \’打开文件
xls.Worksheets(1).Range("A1")="你的变量" \’向A1单元格写入数据
xls.Workbooks(1).SaveAs FileName:=str_File \’保存文件
我在本机上装了office 2003 在vb中可以执行createobject(excel.application),但是当我将程序放到另外一台装了 office 2002 的机子中运行原来一样的程序时,createobject(excel.application)这句就不能执行了。老是报“dll无法找到”
createobject(excel.application)这句应该怎么改呢?请高手指点。
原来在vb中使用createobject(excel.application)的时候是不需要添加引用“Microsoft Excel 11.0 Object Library”的。vb程序可以自动创建对象,并且原来在程序中使用的
Dim xlsApp As Excel.Application
Dim xlsBook As Excel.Workbook
Dim xlsSheet As Excel.Worksheet
也不需要了。并且可以适合任何版本的office
char szFilter[]="Bin files(*.*)&line;*.*";
CFileDialog dlg(1,NULL,NULL,NULL,szFilter);
if(dlg.DoModal()==IDOK)
&leftsign;
m_file = dlg.GetPathName();
UpdateData(FALSE);
&rightsign;
\’ <summary>
\’ 读取Excel文件
\’ </summary>
\’ <param name="dt">要转换为Excel文件的表</param>
\’ <param name="page">页面Page对象,用法: 将me.Page传递过来即可</param>
\’ <return>数据集DataSet</return>
Public Function ReadExcelFileToDataSet(ByVal strFileName As String) As DataSet
Try
\’建立一个专门存放Excel文件的目录
If Directory.Exists(Page.Server.MapPath("ExcelFolder")) = False Then
Directory.CreateDirectory(Page.Server.MapPath("ExcelFolder"))
End If
Dim strConn As String
strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" &
Page.Server.MapPath(".") & "ExcelFolder" & strFileName & ";" & "Extended
Properties=Excel 8.0;"
Dim conn As OleDb.OleDbConnection = New OleDb.OleDbConnection(strConn)
Dim strExcel As String = "select * from [sheet1$]"
Dim ds As DataSet = New DataSet
conn.Open()
Dim adapter As OleDbDataAdapter = New OleDbDataAdapter(strExcel, strConn)
adapter.Fill(ds)
Return ds
Catch ex As Exception
Throw ex
End Try
End Function
历史博文
- 20081014 c# ironpython call function - 2009
- 20070109 H.323 TAPI Active Directory - 2007
- 0223 uniwin eclipse cdt gcc cygwin 2 - 2006
- Visual Studio Express Edition Beta 2中文版安装试验 - 2005