下面是对EXECL的基础操作说明:
Set xlApp = CreateObject("Excel.Application")
‘激活EXCEL应用程序
xlApp.Visible = False ‘隐藏EXCEL应用程序窗口
Set xlBook = xlApp.Workbooks.Open(strDestination)
‘打开工作簿,strDestination为一个EXCEL报表文件
Set xlSheet = xlBook.Worksheets(1)
‘设定工作表
1、定义EXCEL对象变量
dim x as excel.application
2、VB中,启动EXCEL
set x=createobject("excel.application")
3、新建一个EXCEL工作簿
x.workbooks.add
4、选定工作表1
set xsheet=xbook.worksheets(1)
5、指定单元格,并赋值
xsheet.cell(1,1)=ret.fields(0)
6、指定EXCEL列宽
xsheet.column(1).columnwidth=10
7、RANGE()函数,选定单元格区域
range(cells(1,1),cells(10,20))
8、设置EXCEL字体
xsheet.range(cells(1,1),cells(10,20)).font.name="黑体"
9、设置EXCEL为粗体
xsheet.range(cells(1,1),cells(10,20)).fontbold=true
10、设置EXCEL表格边框
xsheet.range(cells(1,1),cells(10,20)).borders.linestyle=xlcontinuous
11、运行时,显示EXCEL或隐藏EXCEL
x.visible=true
12、保存工作簿
xbook save
13、退出EXCEL
x.quit
14、交还控制权给EXCEL
set x=nothing
15、打印EXCEL表
x.active.window.selectedsheets.printout copies=numcopies
16、退出EXCEL时,不出现保存提示。
x.displayalerts=false
17、怎样运用EXCEL公式?
x.range("A3").formula= "=max(A1,A2)"
18、EXCEL代码获取技巧
打开EXCEL中的工具----宏----录制新宏,然后进行手工操作,结束后把所录的宏代码贴进你的VB程序就行。
19、合并单元格代码
x.range("A2:A5").inergecells=true
20、自动调整列宽代码
x.column("A:I").autofit ' a到 I列自动调整列宽
21、文本自动换行代码
x.rows(3).wraptext=true
22、设置字体颜色
x.rows(1).font.colorindex=4
23、打印预览代码
x.worksheets.printpreview
24、打开EXCEL文件
x.workbooks.open filename:="c:\my documents\my vb \lgx \dy.xls"
下面是如何从EXECL文件中读写数据:
使用Excel Sheet对象的技术可以处理可变数量的数据,并将结果最后送到你的Visual Basic 应用程序中。例子如下:
新建一个工程并在新建的窗体上放置两个TextBox控件和一个CommandButton控件及六个Label控件。建设中的窗体如图2所示。
程序代码如下:
Option Explicit
Private Sub Command1-Click()
Dim xObject As Object
Set xObject = CreateObject("Excel.Sheet")
Set xObject = xObject.Application.ActiveWorkbook.ActiveSheet
xObject.Range("A1").Value = Text1.Text ′将数值送入Excel的A1单元格
xObject.Range("A2").Value = Text2.Text ′将数值送入Excel的A2单元格
xObject.Range("A3").Formula = "=MAX(A1,A2)" ′将最大值送入A3单元格
xObject.Range("A4").Formula = "=ATAN(A1/A2)*180/PI()" ′将反正切值送入A4单元格
′显示计算的结果
Label1.Caption = xObject.Range("A3").Value'从EXECL读出数值
Label2.Caption = xObject.Range("A4").Value
Set xObject = Nothing
End Sub
Private Sub Form_Load()
Text1.Text = ""
Text2.Text = ""
Label1.Caption = ""
Label2.Caption = ""
End Sub
该程序的作用是:首先在两个文本框(Text1和Text2)输入数值并分别将输入的数值送入Excel的"A1"和"A2"单元格中,然后用Excel中的"Max()"函数将计算的结果送入"A3" 单元格中;用反正切函数"ATAN()"进行计算并将结果送入"A4" 单元格中,最后输出。
有了以上说明,再加上你已经学会的ACCESS数据库操作技术,就可以实现EXECL里的数据批量导入ACCESS了。
Access的长处是处理超大量数据(查询,汇总等),但不太适宜大批量录入数据。
你可以先在Excel里录入数据,然后在Acess里建立表,其表头与Excel文件的一样,然后用导入功能将数据获得。
Command是用来做参数传递的,尤其是批量参数传递。Command对象主要是向SQL语句、StoredProcude传递参数,依靠SQL的强大功能来完成数据库的操作;而RecordSet对象,我们可以看作是封装了数据对象,并提供了一系列的方法和属性来简化数据库的编程。
我们通过下面用两种方法向数据库中增加一条记录的演示,可以看出,这两个对象在处理一些问题上所用的不同的方法:RecordSet对象似乎更加好理解一些,但Command的性能更优越一些,特别是在批量的加入记录的情况下。
用Command对象的方法:
const adCmdText=&H0001
const adInteger=3
const adVarChar=200
Const adParamInput = &H0001
set conn=Server.CreateObject("ADODB.Connection")
set comm=Server.Createobject(“ADODB.Command”)
conn.open "Driver={ Microsoft Access Driver};DBQ="& _
Server.Mappath(“/source_asp")&"/property/chunfeng.mdb;"
comm.ActiveConnection=conn
comm.CommandType=adCmdText
comm.CommandText="insert into chunfeng (ID,Name,) "& _
&"values(?,?,?)”
set param=comm.CreateParameter("ID",adInteger,adParamInput,3,4)
comm.Parameters.Append param
set param=comm.CreateParameter("NAME",adVarChar,adParamInput,255, "intels")
comm.Parameters.Append param
comm.Execute
conn.close