• 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
  • 相关阅读:
    javascript超过容器后显示省略号效果(兼容一行或者多行)
    javascript仿新浪微博图片放大缩小及旋转效果
    javascript瀑布流效果
    javascript日历插件
    JS图片Switchable切换大集合
    JS简单的倒计时(代码优化)
    JS全选功能代码优化
    JS日期格式化转换方法
    Jquery简单的placeholder效果
    jQuery封装自定义事件--valuechange(动态的监听input,textarea)之前值,之后值的变化
  • 原文地址:https://www.cnblogs.com/ringwang/p/1330931.html
Copyright © 2020-2023  润新知