020-29133788
    资 讯
    您的位置:首页 >> 资 讯 >> 软件应用 >> 编程开发 >> 正文
    如何用vb来 呼叫/写入 excel里面的资料

    点击:   发布日期:2013-01-13

    本文来自 www.020fix.com
    大家可一起来讨论讨论。
    这是我约3 , 4年前因公司POS系统需求,而写的,其实只要录制巨集,然后
    看巨集的语法,多少都能套用到VB的程式码里的。我们当时,就是这样玩出
    来的哟~~
    下面是一点点的程式码,供大家参考。

    1. 设定引用项目 -> Microsoft Excel 9.0 Object Library

    With Excel.Application
        '新增档案
        .Workbooks.Add
        .ActiveWorkbook.SaveAs "C:\EXECL-TEST.xls"
        '.Workbooks.open("C:\EXECL-TEST.xls")        '开启旧档的方法

        .Application.DisplayAlerts = False  '将某一Sheet删除,如果不加.DisplayAlerts这
        .ActiveWorkbook.Sheets(3).Delete    '2 行,为出现确定要删除的MsgBox,所以如果
        .Application.DisplayAlerts = True   '要直接删除(通常都是),就加这2行吧!!

        .Worksheets.Add  '新增Sheet
        .ActiveSheet.Name = "tEsT"  '将使用中的Sheet改名称

        .Worksheets(2).Select  '选择第2个Sheet
        .Worksheets(2).Name = "第二个"

        .Cells(1, 1) = "产品条码": .Cells(1, 2) = "产品料号"    '将资料写到对应的Cells里
        .Cells(1, 7) = "盘盈损数量": .Cells(1, 8) = "盘盈损值"
       
        For iLop = 2 To 10        '也可以用Loop的方式写资料哟
          .Cells(iLop, 1) = iLop  '
          .Cells(iLop, 2) = iLop  '
          .Cells(iLop, 3) = iLop  '
          .Cells(iLop, 10) = iLop '
        Next iLop
       
        sText = .Cells(1, 8)  '当然也可以读取Excel里的值呀~

        .Columns("A:A").Select                   '储存格式改为 '文字'
        .Selection.NumberFormatLocal = "@"       '<<==---------------
       
        .Columns("A:A").ColumnWidth = 10         '设定栏宽
        .Columns("B:B").ColumnWidth = 15         '
       
        .Range("A2").Select
        ActiveWindow.FreezePanes = True          '冻结窗格
       
        .ActiveWindow.Zoom = 75        '设定显示比例
        .ActiveWorkbook.Save
       
        .ActiveWorkbook.Close False
        .Application.Quit
      End With