vb 数据怎么写入excel?

vb 数据怎么写入excel?,第1张

'在工程中添加对Excel的引用

Dim xlsApp As Excel.Application

Dim xlsBook As Excel.Workbook

Private Sub Command1_Click()

Dim I As Integer

Set xlsApp = Excel.Application

xlsApp.Visible = False

Set xlsBook = xlsApp.Workbooks.Open("D:\11.xls")

I = 1

Do While xlsApp.Sheets(1).cells(I, 1) <>""

I = I + 1

Loop

xlsApp.Sheets(1).cells(I, 1) = Text1.Text

xlsBook.Close (True)

xlsApp.Quit

Set xlsApp = Nothing

MsgBox "数据写入成功!"

End Sub

方法一:可以试着用VB书写一段调用SQL Server数据库DTS的代码,然后就可以像直接使用DTS进行数据导入一样就行Excel与SQL Server数据之间的迁移了。

方法二:可以用VB来 *** 作EXCEL,然后一条数据一条数据的插入到数据库中,这种方法不推荐使用,因为VB *** 作EXCEL是非常慢的,如果数据量太大,很有可能会造成机。

VB可将使用Object 数据类型对EXCEL对象进行引用。

Object 数据类型,Object 变量存储为 32 位(4 

个字节)的地址形式,其为对象的引用。利用 Set 语句,声明为 Object 

的变量可以赋值为任何对象的引用。

注意 虽然以 Object 

类型声明的变量足以适应包含对各种对象的引用,但是绑定到变量引用的对象总是在晚期(运行时)绑定。要强迫在早期(编译时间)绑定的话,须将对象的引用赋值给用特定类名称声明的变量。

新建VB的EXE工程,使用如下代码在第一行第一列写入vb *** 作excel:

Option Explicit

  Dim xlapp As Object

  Dim xlBook As Object

  Dim xlSheet As Object

  Dim A As String

Private Sub Command1_Click()

  Set xlapp = CreateObject("excel.application")

  xlapp.Visible = True

  Set xlBook = xlapp.Workbooks.Add

  Set xlSheet = xlBook.worksheets(1)

  A = "vb *** 作excel"

  xlSheet.Cells(1, 1) = A

End Sub

全面控制 Excel

首先创建 Excel 对象,使用ComObj:

Dim ExcelID as Excel.Application

Set ExcelID as new Excel.Application

1) 显示当前窗口:

ExcelID.Visible := True

2) 更改 Excel 标题栏:

ExcelID.Caption := '应用程序调用 Microsoft Excel'

3) 添加新工作簿:

ExcelID.WorkBooks.Add

4) 打开已存在的工作簿:

ExcelID.WorkBooks.Open( 'C:\Excel\Demo.xls' )

5) 设置第2个工作表为活动工作表:

ExcelID.WorkSheets[2].Activate

或 ExcelID.WorkSheets[ 'Sheet2' ].Activate

6) 给单元格赋值:

ExcelID.Cells[1,4].Value := '第一行第四列'

7) 设置指定列的宽度(单位:字符个数),以第一列为例:

ExcelID.ActiveSheet.Columns[1].ColumnsWidth := 5

8) 设置指定行的高度(单位:磅)(1磅=0.035厘米),以第二行为例:

ExcelID.ActiveSheet.Rows[2].RowHeight := 1/0.035// 1厘米

9) 在第8行之前插入分页符:

ExcelID.WorkSheets[1].Rows[8].PageBreak := 1

10) 在第8列之前删除分页符:

ExcelID.ActiveSheet.Columns[4].PageBreak := 0

11) 指定边框线宽度:

ExcelID.ActiveSheet.Range[ 'B3:D4' ].Borders[2].Weight := 3

1-左 2-右 3-顶 4-底 5-斜( \ ) 6-斜( / )

12) 清除第一行第四列单元格公式:

ExcelID.ActiveSheet.Cells[1,4].ClearContents

13) 设置第一行字体属性:

ExcelID.ActiveSheet.Rows[1].Font.Name := '隶书'

ExcelID.ActiveSheet.Rows[1].Font.Color := clBlue

ExcelID.ActiveSheet.Rows[1].Font.Bold := True

ExcelID.ActiveSheet.Rows[1].Font.UnderLine := True

14) 进行页面设置:

a.页眉:

ExcelID.ActiveSheet.PageSetup.CenterHeader := '报表演示'

b.页脚:

ExcelID.ActiveSheet.PageSetup.CenterFooter := '第&P页'

c.页眉到顶端边距2cm:

ExcelID.ActiveSheet.PageSetup.HeaderMargin := 2/0.035

d.页脚到底端边距3cm:

ExcelID.ActiveSheet.PageSetup.HeaderMargin := 3/0.035

e.顶边距2cm:

ExcelID.ActiveSheet.PageSetup.TopMargin := 2/0.035

f.底边距2cm:

ExcelID.ActiveSheet.PageSetup.BottomMargin := 2/0.035

g.左边距2cm:

ExcelID.ActiveSheet.PageSetup.LeftMargin := 2/0.035

h.右边距2cm:

ExcelID.ActiveSheet.PageSetup.RightMargin := 2/0.035

i.页面水平居中:

ExcelID.ActiveSheet.PageSetup.CenterHorizontally := 2/0.035

j.页面垂直居中:

ExcelID.ActiveSheet.PageSetup.CenterVertically := 2/0.035

k.打印单元格网线:

ExcelID.ActiveSheet.PageSetup.PrintGridLines := True

15) 拷贝 *** 作:

a.拷贝整个工作表:

ExcelID.ActiveSheet.Used.Range.Copy

b.拷贝指定区域:

ExcelID.ActiveSheet.Range[ 'A1:E2' ].Copy

c.从A1位置开始粘贴:

ExcelID.ActiveSheet.Range.[ 'A1' ].PasteSpecial

d.从文件尾部开始粘贴:

ExcelID.ActiveSheet.Range.PasteSpecial

16) 插入一行或一列:

a. ExcelID.ActiveSheet.Rows[2].Insert

b. ExcelID.ActiveSheet.Columns[1].Insert

17) 删除一行或一列:

a. ExcelID.ActiveSheet.Rows[2].Delete

b. ExcelID.ActiveSheet.Columns[1].Delete

18) 打印预览工作表:

ExcelID.ActiveSheet.PrintPreview

19) 打印输出工作表:

ExcelID.ActiveSheet.PrintOut

20) 工作表保存:

If not ExcelID.ActiveWorkBook.Saved then

ExcelID.ActiveSheet.PrintPreview

End if

21) 工作表另存为:

ExcelID.SaveAs( 'C:\Excel\Demo1.xls' )

22) 放弃存盘:

ExcelID.ActiveWorkBook.Saved := True

23) 关闭工作簿:

ExcelID.WorkBooks.Close

24) 退出 Excel:

ExcelID.Quit

25) 设置工作表密码:

ExcelID.ActiveSheet.Protect "123", DrawingObjects:=True, Contents:=True, Scenarios:=True

26) EXCEL的显示方式为最大化

ExcelID.Application.WindowState = xlMaximized

27) 工作薄显示方式为最大化

ExcelID.ActiveWindow.WindowState = xlMaximized

28) 设置打开默认工作薄数量

ExcelID.SheetsInNewWorkbook = 3

29) '关闭时是否提示保存(true 保存;)

ExcelID.DisplayAlerts = False

30) 设置拆分窗口,及固定行位置

ExcelID.ActiveWindow.SplitRow = 1

ExcelID.ActiveWindow.FreezePanes = True

31) 设置打印时固定打印内容

ExcelID.ActiveSheet.PageSetup.PrintTitleRows = "$1:$1"

32) 设置打印标题

ExcelID.ActiveSheet.PageSetup.PrintTitleColumns = ""

33) 设置显示方式(分页方式显示)

ExcelID.ActiveWindow.View = xlPageBreakPreview

34) 设置显示比例

ExcelID.ActiveWindow.Zoom = 100

35) 让Excel 响应 DDE 请求

Ex.Application.IgnoreRemoteRequests = False


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11623098.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-17
下一篇2023-05-17

发表评论

登录后才能评论

评论列表(0条)

    保存