45fan.com - 路饭网

搜索: 您的位置主页 > 网络频道 > 阅读资讯:Domino中通用的视图打印的方法

Domino中通用的视图打印的方法

2016-08-31 19:00:11 来源:www.45fan.com 【

Domino中通用的视图打印的方法

Sub Initialize

Dim session As New notessession

Dim db As notesdatabase

Set db=session.currentdatabase

Dim view As notesview

Set view=db.getview("PrintView")

iPageLine=Int(Inputbox("每页行数?"))

Dim excelApplication As Variant

Dim excelWorkbook As Variant

Dim excelSheet As Variant

Set excelApplication = CreateObject("Excel.Application")

excelApplication.Visible = True

Set excelWorkbook = excelApplication.Workbooks.Add

Set excelSheet = excelWorkbook.Worksheets("Sheet1")

REM 输出开始

'设置行高

excelSheet.Rows.RowHeight=40

'完成

'垂直居中

excelSheet.Rows.VerticalAlignment =2

'完成

Dim navigator As notesviewnavigator

Dim entry As notesviewentry

Set navigator=view.createviewnav()

Set entry=navigator.getfirst

i=0

Do While(Not entry Is Nothing)

If i Mod iPageLine=0 Then '10行换页[A4]

If i<>0 Then

j=1

Forall columnvalue In Entry.columnvalues

excelSheet.Cells(i,j)=columnvalue

j=j+1

End Forall

Set entry=navigator.getnext(entry)

End If

excelSheet.Range(Cstr(i+1)+":"+Cstr(i+1)).Font.Size=18

excelSheet.Range(Cstr(i+1)+":"+Cstr(i+1)).Borders.Weight=1

excelSheet.Rows(i+1).RowHeight=60

excelSheet.Range("A"+Cstr(i+1)+":"+"E"+Cstr(i+1)).Merge(True) '合并单元格

excelSheet.Range("A"+Cstr(i+1)+":"+"E"+Cstr(i+1)).MergeCells=True '合并单元格

excelSheet.Cells(i+1,1)="报表名称"

excelSheet.Cells(i+1,1).HorizontalAlignment=3

excelSheet.Cells(i+1,1).VerticalAlignment=3

k=1

Forall m In view.columns

excelSheet.Cells(i+2,k)=m.title

excelSheet.Cells(i+2,k).HorizontalAlignment=3

k=k+1

End Forall

i=i+3

Else

j=1

Forall columnvalue In Entry.columnvalues

excelSheet.Cells(i,j)=columnvalue

'设置列宽

excelSheet.Columns(j).ColumnWidth=20

'完成

j=j+1

End Forall

Set entry=navigator.getnext(entry)

i=i+1

End If

Loop

i=i-1

If i Mod iPageLine<>0 Then

For k=1 To iPageLine-(i Mod iPageLine)

excelSheet.Cells(i+k,1)=" "

Next

End If

REM 输出结束

excelSheet.UsedRange.Select

'excelSheet.UsedRange.EntireColumn.AutoFit

excelSheet.UsedRange.WrapText=True

excelSheet.UsedRange.Borders.Weight=2

excelSheet.UsedRange.VerticalAlignment = 3

'excelSheet.UsedRange.HorizontalAlignment=4'水平右对齐

excelWorkbook.PersonalViewPrintSettings=True '单元格中文本自动换行

excelWorkbook.PrintPreview

REM excelWorkbook.PrintOut

excelApplication.quit

Set excelSheet=Nothing

End Sub
 

本文地址:http://www.45fan.com/a/question/70436.html
Tags: 视图 Domino 中通
编辑:路饭网
关于我们 | 联系我们 | 友情链接 | 网站地图 | Sitemap | App | 返回顶部