关于Notes数据导入导出到Excel表格中的问题

wlx_1271780265 2012-09-06 04:35:11
关于Notes数据导入导出到Excel表格中的问题

在网上也搜过一些代码,但是都报错了,而且是获取不到@ViewTitle(我理解为视图标题),然后还有几处都为报错

Sub Click(Source As Button)
On Error Goto errorMessage
Dim session As New NotesSession
Dim db As NotesDatabase
Dim doc As NotesDocument
Dim view As NotesView
Dim excelApplication As Variant
Dim excelWorkbook As Variant
Dim excelSheet As Variant
Dim i As Integer
Dim excelSave As New NotesUIWorkspace
Dim excelFileName As Variant
Dim viewName As Variant

Set doc = session.DocumentContext
viewName = Evaluate(|@Text(@ViewTitle)|,doc)
Msgbox "view:" + viewName(0)

Forall v In viewName
Msgbox "viewname:" + v
End Forall
Set db=session.CurrentDatabase
viewName=view.Name

Set view=db.GetView(viewName)
Set doc=view.GetFirstDocument
If Not(doc Is Nothing ) Then
Set excelApplication=CreateObject("Excel.Application")
excelFileName=excelSave.SaveFileDialog(False,"选择您所要保存的路径","dd")
If excelFileName(0) <>"" Then
excelFileName(0)=excelFileName(0)+".xls"
End If
If Not(Isempty(excelFileName)) Then
excelApplication.Visible = True
Set excelWorkbook=excelApplication.Workbooks.Add
Set excelSheet = excelWorkbook.Worksheets("Sheet1")
excelSheet.Cells(1,1).Value="周报标题"
excelSheet.Cells(1,2).Value="部门"
excelSheet.Cells(1,3).Value="职位"
i=1
Dim j,z As Variant
j=0
j=j+1
z=j

While Not(doc Is Nothing)
i=i+1
excelSheet.Cells(i,z).Value=doc.zbbiaoti(0)
excelSheet.Cells(i,z+1).Value=doc.bumen(0)
excelSheet.Cells(i,z+2).Value=doc.zwei(0)
Set doc=view.GetNextDocument(doc)
Wend

End If
End If
excelSheet.Columns("A").Select
excelSheet.Columns("A").EntireColumn.AutoFit
excelWorkbook.SaveAs(excelFileName(0))
excelApplication.Quit
Set excelApplication=Nothing

errorMessage:
If Error <> "" Then
Msgbox "错误信息: " +Error$ +" 错误行:"+Cstr(Erl)+"行"
End If
End Sub
...全文
1460 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
少年民仔 2014-12-23
  • 打赏
  • 举报
回复
我想问一下LZ怎么解决那个取不到值的问题。。
wlx_1271780265 2013-07-09
  • 打赏
  • 举报
回复
引用 4 楼 zhuwx1980 的回复:
[quote=引用 3 楼 wlx_1271780265 的回复:] 还有一个问题想请教一下,就是您知道Notes中怎样导入Excel表格中的数据吗?
是B/S还是C/S?[/quote] 是C/S
小小编辑 2013-01-18
  • 打赏
  • 举报
回复
引用 3 楼 wlx_1271780265 的回复:
还有一个问题想请教一下,就是您知道Notes中怎样导入Excel表格中的数据吗?
是B/S还是C/S?
cape114 2012-09-12
  • 打赏
  • 举报
回复
viewName = Evaluate(|@Text(@ViewTitle)|,doc)
这个取不到值,Evaluate不能执行@ViewTitle,看上面的帮助。
cape114 2012-09-12
  • 打赏
  • 举报
回复
Evaluate:

@Functions that affect the user interface do not work in the Evaluate method. These include: @Command, @DbManager, @DbName, @DbTitle, @DDEExecute, @DDEInitiate, @DDEPoke, @DDETerminate, @DialogBox, @PickList, @PostedCommand, @Prompt, and @ViewTitle.
wlx_1271780265 2012-09-12
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

viewName = Evaluate(|@Text(@ViewTitle)|,doc)
这个取不到值,Evaluate不能执行@ViewTitle,看上面的帮助。
[/Quote]

恩,知道了,这个问题已经解决了。。。
还有一个问题想请教一下,就是您知道Notes中怎样导入Excel表格中的数据吗?
网管教程 从入门到精通软件篇 ★一。★详细的xp修复控制台命令和用法!!! 放入xp(2000)的光盘,安装时候选R,修复! Windows XP(包括 Windows 2000)的控制台命令是在系统出现一些意外情况下的一种非常有效的诊断和测试以及恢复系统功能的工具。小编的确一直都想把这方面的命令做个总结,这次辛苦老范给我们整理了这份实用的秘笈。   Bootcfg   bootcfg 命令启动配置和故障恢复(对于大多数计算机,即 boot.ini 文件)。   含有下列参数的 bootcfg 命令仅在使用故障恢复控制台时才可用。可在命令提示符下使用带有不同参数的 bootcfg 命令。   用法:   bootcfg /default  设置默认引导项。   bootcfg /add    向引导列表添加 Windows 安装。   bootcfg /rebuild  重复全部 Windows 安装过程并允许用户选择要添加的内容。   注意:使用 bootcfg /rebuild 之前,应先通过 bootcfg /copy 命令备份 boot.ini 文件。   bootcfg /scan    扫描用于 Windows 安装的所有磁盘并显示结果。   注意:这些结果被静态存储,并用于本次会话。如果在本次会话期间磁盘配置发生变化,为获得更新的扫描,必须先重新启动计算机,然后再次扫描磁盘。   bootcfg /list   列出引导列表已有的条目。   bootcfg /disableredirect 在启动引导程序禁用重定向。   bootcfg /redirect [ PortBaudRrate] |[ useBiosSettings]   在启动引导程序通过指定配置启用重定向。   范例: bootcfg /redirect com1 115200 bootcfg /redirect useBiosSettings   hkdsk   创建并显示磁盘的状态报告。Chkdsk 命令还可列出并纠正磁盘上的错误。   含有下列参数的 chkdsk 命令仅在使用故障恢复控制台时才可用。可在命令提示符下使用带有不同参数的 chkdsk 命令。   vol [drive:] [ chkdsk [drive:] [/p] [/r]   参数  无   如果不带任何参数,chkdsk 将显示当前驱动器的磁盘状态。 drive: 指定要 chkdsk 检查的驱动器。 /p   即使驱动器不在 chkdsk 的检查范围内,也执行彻底检查。该参数不对驱动器做任何更改。 /r   找到坏扇区并恢复可读取的信息。隐含着 /p 参数。   注意 Chkdsk 命令需要 Autochk.exe 文件。如果不能在启动目录(默认为 %systemroot%System32)找到该文件,将试着在 Windows 安装 CD 找到它。如果有多引导系统的计算机,必须保证是在包含 Windows 的驱动器上使用该命令。 Diskpart   创建和删除硬盘驱动器上的分区。diskpart 命令仅在使用故障恢复控制台时才可用。   diskpart [ /add |/delete] [device_name |drive_name |partition_name] [size]   参数 无   如果不带任何参数,diskpart 命令将启动 diskpart 的 Windows 字符模式版本。   /add   创建新的分区。   /delete   删除现有分区。   device_name   要创建或删除分区的设备。设备名称可从 map 命令的输出获得。例如,设备名称:   DeviceHardDisk0   drive_name   以驱动器号表示的待删除分区。仅与 /delete 同时使用。以下是驱动器名称的范例:   D:   partition_name   以分区名称表示的待删除分区。可代替 drive_name 使用。仅与 /delete 同时使用。以下是分区名称的范例:   DeviceHardDisk0Partition1    大小   要创建的分区大小,以兆字节 (MB)表示。仅与 /add 同时使用。   范例   下例将删除分区: diskpart /delete Device HardDisk0 Partition3 diskpart /delete F:   下例将在硬盘上添加一个 20 MB 的分区:   diskpart /add Device HardDisk0 20   Fixboot

535

社区成员

发帖
与我相关
我的任务
社区描述
企业开发 Exchange Server
社区管理员
  • 消息协作社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧