zoukankan      html  css  js  c++  java
  • LOTUS/DOMINO学习笔记之导出到EXCEL的方法

    传递要导出的视图名和工作表名

    Function OutputExcel(ViewName As String,SheetName As String)
        
    Dim session As New NotesSession 
        
    Dim db As NotesDatabase 
        
    Dim view As Notesview
        
    Dim colls As NotesDocumentCollection
        
    Dim doc As Notesdocument
        
    Dim doc2 As Notesdocument
        
    Dim excelapplication As Variant 
        
    Dim excelworkbook As Variant 
        
    Dim excelsheet As Variant 
        
    Dim i As Integer 
        
    Dim uvcols As Integer 
        
    Dim selection As Variant 
        path
    =session.GetEnvironmentString ("D:",True)
        
    Set excelapplication=CreateObject("Excel.Application")
        excelapplication.statusbar
    ="正在创建工作表,请稍等.."
        excelapplication.Visible
    =True
        excelapplication.Workbooks.Add
        excelapplication.referencestyle
    =2
        
    Set excelsheet=excelapplication.Workbooks(1).worksheets(1)
        excelsheet.name
    =SheetName '工作表的名字
        Dim rows As Integer 
        
    Dim cols As Integer 
        
    Dim maxcols As Integer 
        
    Dim fieldname As String 
        
    Dim fitem As NotesItem 
        rows
    =1
        cols
    =1
        
    Set db=session.CurrentDatabase 
        
    Set view=db.GetView (ViewName)
        
    Set colls=db.UnprocessedDocuments
        uvcols
    =Ubound(view.Columns)
        
    For x=0 To Ubound(view.Columns)
            excelapplication.statusbar
    ="正在创建单元格,请稍等.."
            
    If view.Columns(x).IsHidden=False Then
                
    If view.Columns(x).title<>"" Then
                    excelsheet.Cells(rows,cols).value
    =view.Columns(x).Title
                    cols
    =cols+1 
                
    End If
            
    End If
        
    Next
        maxcols
    =cols-1
        
    Set doc=view.GetFirstDocument    
        
    Set doc2=colls.GetFirstDocument
        rows
    =2
        cols
    =1        
        
    Dim inside As Boolean
        inside
    =False
        
        
    While Not(doc Is Nothing)    
            
    For x=0 To Ubound(view.Columns)
                excelapplication.statusbar
    ="正在从Notes中引入数据,请稍等.."
                fieldname
    =view.Columns(x).itemname            
                
    Set fitem=doc.GetFirstItem(fieldname)
                
    If view.Columns(x).title="文档号" Then    '自动生成的文档号处理        
                    excelsheet.Cells(rows,cols).value=rows-1
                
    Else
                    
                    
    If Not (fitem Is NothingThen
                        excelsheet.Cells(rows,cols).value
    =fitem.Text 
                    
    Else
                        excelsheet.Cells(rows,cols).value
    =""
                    
    End If
                
    End If
                cols
    =cols+1
            
    Next
            rows
    =rows+1
            cols
    =1        
            
    Set doc=view.GetNextdocument(doc)
        Wend        
        excelapplication.statusbar
    ="数据导入完成。"    
        
    Set excelapplication=Nothing
    End Function
  • 相关阅读:
    自定义 Laravel 5.7
    1项目环境配置和用户表设计
    Laravel 6.X + Vue.js 2.X + Element UI 开发知乎流程
    component:(resolve) => require
    Vue2.0 render:h => h(App)
    techiediaries Vuejs教程
    techiediaries网站的Laravel 6系列教程
    合并结果插件
    SQLMAP
    CNC MacroProgram
  • 原文地址:https://www.cnblogs.com/ringwang/p/1330931.html
Copyright © 2011-2022 走看看