| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3002 人关注过本帖, 1 人收藏
标题:VB创建带模板的EXCEL
只看楼主 加入收藏
cc2191015
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2015-5-8
结帖率:33.33%
收藏(1)
已结贴  问题点数:5 回复次数:7 
VB创建带模板的EXCEL
怎么样创建带模板的EXCEL下面的程序从网上搜的不能用:
Private Sub Command1_Click()
    Dim strTemplateFile         As String
    Dim strFileName             As String
    Dim FSO                     As New FileSystemObject
    Dim excelApp                As Excel.Application
    Dim excelBook               As Excel.Workbook
    Dim excelSheet              As Excel.Worksheet
    Dim lngLineNo               As Long
    Dim i                       As Long
   
    On Error GoTo ErrHandle


    strTemplateFile = App.Path & gStrXlt & "\21.xls"
    If FSO.FileExists(strTemplateFile) Then
        MsgBox "模板文件不存在", vbCritical, Me.Caption
        Exit Sub
    End If
   
    strFileName = App.Path & gStrOther & "\新文件名" & Format(Date, "YYYYMMDD") & ".xls"
     
    If FSO.FileExists(strFileName) Then
        FSO.DeleteFile strFileName
    End If
   
    Set excelApp = CreateObject("Excel.Application")
    Set excelBook = excelApp.Workbooks.Open(strTemplateFile)
    Set excelSheet = excelBook.Worksheets(1)
   
   
    excelApp.Visible = False
    excelApp.DisplayAlerts = False         '禁止Excel提示
    excelApp.Columns("A:L").NumberFormatLocal = "@"  '设置成文本格式
   
   
    With prg
        .Max = lvData.ListItems.Count
        .Min = 0
        .Value = 0
    End With
    lngLineNo = 4        '从第四行开始写
    For i = 1 To lvData.ListItems.Count
        excelSheet.Cells(lngLineNo, 1) = lvData.ListItems(i).SubItems(1)
        excelSheet.Cells(lngLineNo, 2) = lvData.ListItems(i).SubItems(2)
        excelSheet.Cells(lngLineNo, 3) = lvData.ListItems(i).SubItems(3)
        excelSheet.Cells(lngLineNo, 4) = lvData.ListItems(i).SubItems(4)
        excelSheet.Cells(lngLineNo, 5) = lvData.ListItems(i).SubItems(5)
        lngLineNo = lngLineNo + 1
        If prg.Value < prg.Max Then
            prg.Value = prg.Value + 1
        End If
        DoEvents
    Next
    prg.Value = prg.Max
   
    With excelSheet
        .Range(.Cells(1, 1), Cells(lvData.ListItems.Count + 3, 5)).Borders.LineStyle = xlContinuous
        .Range(.Cells(1, 1), Cells(lvData.ListItems.Count + 3, 5)).Font.Size = 9
    End With
   
    excelBook.Saved = True
    excelBook.SaveAs strFileName
    '关闭Excel进程
    excelBook.Close
    excelApp.Quit
   
    Set excelBook = Nothing
    Set excelApp = Nothing
   
    MsgBox "导出完毕!" & vbCrLf & "文件路径:" & strFileName, vbInformation, Me.Caption


    On Error GoTo 0
    Exit Sub
ErrHandle:
    Call gErrList("frmFenQiQiShuRpt.cmdExport_Click", Err.Description, Err.Number, True)
End Sub
搜索更多相关主题的帖子: EXCEL 网上 
2015-05-08 16:50
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4947
专家分:30084
注 册:2008-10-15
收藏
得分:3 
App.Path & gStrXlt & "\21.xls"

自己做一个模板吧。

这个模板,就是 除下要填的数据外,其他部分统统先做好,然后保存到这个目录,这个文件名就可以了。

程序的流程:打开这个文件,然后填充数据,然后别存为 目录文件。

授人于鱼,不如授人于渔
早已停用QQ了
2015-05-08 17:02
cc2191015
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2015-5-8
收藏
得分:0 
回复 2楼 风吹过b
建立模板 就是新建个EXCEL放在这个文件下吗?试了 不能用
2015-05-08 17:05
wube
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:23
帖 子:1820
专家分:3681
注 册:2011-3-24
收藏
得分:3 
以下是引用cc2191015在2015-5-8 17:05:27的发言:

建立模板 就是新建个EXCEL放在这个文件下吗?试了 不能用


模板 = *.xlt

不要選我當版主
2015-05-08 17:41
cc2191015
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2015-5-8
收藏
得分:0 
回复 4楼 wube
哥,还是不能用呢,是不是这个程序有什么问题?
2015-05-09 08:43
cc2191015
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2015-5-8
收藏
得分:0 
图片附件: 游客没有浏览图片的权限,请 登录注册
图片附件: 游客没有浏览图片的权限,请 登录注册
2015-05-09 09:03
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4947
专家分:30084
注 册:2008-10-15
收藏
得分:0 
很强大。
程序里,明明写的是   App.Path & gStrXlt & "\21.xls"
你干嘛要用 xlt (EXCel 模板文件)。

app.path 工程所在的目录。
gStrXlt  你自己检查一个这个变量里是什么,内容应该是 以 \ 开头,然后再几个字母。
21.xls   模板的文件名。不要想到什么 EXCEL 模板文件以 XLT 结尾。就使用标准的 XLS 结尾的文件就可以了。这个模板是相对这个程序来说的,不是相对 EXCEL 来说的。

授人于鱼,不如授人于渔
早已停用QQ了
2015-05-09 21:44
wube
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:23
帖 子:1820
专家分:3681
注 册:2011-3-24
收藏
得分:0 
Load *.xlt 存成 *.xls

Set xlBook = xlApp.Workbooks.Open(App.Path & "\" & "123.xlt")
...
...
xlBook.SaveAs App.Path & "\" & "123.XLS"

不要選我當版主
2015-05-11 12:43
快速回复:VB创建带模板的EXCEL
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022210 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved