怎样将notes文档转换成word?

athome626 2005-06-22 09:11:07
如题
...全文
257 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
kingfort 2005-06-23
  • 打赏
  • 举报
回复
'给你看一个我写的东西
'根据当前用户提取所在部门名
Sub Initialize
Dim session As New NotesSession
Dim notes As NotesDocument
Set notes=session.DocumentContext
Set curdb=session.Currentdatabase
Dim exapp As Variant
Dim exwk As Variant
Dim exsh As Variant
Dim Ritem As NotesRichTextItem
Dim Object As notesembeddedobject

Dim viewx As notesview
'Set viewx=curdb.getview("ThisWeek")
Set viewx=curdb.getview("thisWeek")

Print |
<script language="javascript">
var exApp = new ActiveXObject("Excel.Application");
exApp.Application.Visible = true;

//var newsheet = exApp.Workbooks.Add();
var wb=exApp.Workbooks.Open("d:/template.xls")
//var sheet1 = wb.ActiveSheet;
var NewSheet=wb.ActiveSheet;
//sheet1.Cells(9, 2).Value=|notes.itemID(0)|
//sheet1.name="工作报告"
|

'数据初始化
Dim str_DepName As String' 放部门名:#系统一部#系统二部
Dim InitShtRowNum(1 To 10) As Integer '各表开始行数
Dim tempShtRowNum As Integer '当前表开始行数
Dim tempNum As Integer
Dim DepName As String
i=0
For counter% = 1 To 10
InitShtRowNum(counter%) = 7
Next

str_DepName=""

'循环取值

Set docx=viewx.getfirstdocument
While Not docx Is Nothing

'开始取值
find="0"
DepName=docx.department(0)
Select Case DepName
Case "系统一部":tempNum=InitShtRowNum(1)
Case "系统二部":tempNum=InitShtRowNum(2)
Case "系统三部":tempNum=InitShtRowNum(3)
Case "系统四部":tempNum=InitShtRowNum(4)
Case "系统五部":tempNum=InitShtRowNum(5)
Case "系统六部":tempNum=InitShtRowNum(6)
Case "系统中心":tempNum=InitShtRowNum(7)
Case "资讯管理部":tempNum=InitShtRowNum(9)
End Select

Select Case DepName
Case "系统一部":InitShtRowNum(1)=InitShtRowNum(1)+9
Case "系统二部":InitShtRowNum(2)=InitShtRowNum(1)+9
Case "系统三部":InitShtRowNum(3)=InitShtRowNum(2)+9
Case "系统四部":InitShtRowNum(4)=InitShtRowNum(3)+9
Case "系统五部":InitShtRowNum(5)=InitShtRowNum(4)+9
Case "系统六部":InitShtRowNum(6)=InitShtRowNum(6)+9
Case "系统中心":InitShtRowNum(7)=InitShtRowNum(7)+9
Case "资讯管理部":InitShtRowNum(9)=InitShtRowNum(9)+9
End Select

'判断是否已经存在在str_DepName中
If Instr(str_DepName,DepName)<=0 Then '新表
str_DepName=str_DepName+"#"+DepName
find="1"
Print |

wb.worksheets("template").Copy(NewSheet)
var sheet1=wb.worksheets("template (2)")
sheet1.Activate
sheet1.name="|DepName|"
sheet1.Range("A5").value="|DepName|"
sheet1.Range("A8").value="|docx.File_owner(0)|"
sheet1.Range("C15").Value="|docx.Question(0)|"
sheet1.Range("C16").Value="|docx.Plan(0)|"

|
Else '老表


Print |
NewSheet.Activate
NewSheet.Rows("8:16").Select
exApp.Application.Selection.Copy
//取得sheet1
var sheet1=wb.worksheets("|DepName|")
sheet1.Activate
temp="A"+|Cstr(tempNum+1)|
temp1="C"+|Cstr(tempNum+1+7)|
temp2="C"+|Cstr(tempNum+1+8)|

sheet1.Range(temp).Select
sheet1.Paste
sheet1.Range(temp).value="|docx.File_owner(0)|"
sheet1.Range(temp1).Value="|docx.Question(0)|"
sheet1.Range(temp2).Value="|docx.Plan(0)|"

|
End If '表结束


Print |
num=|docx.num(0)|
i=1
|
'开始取值
Dim j As Integer
j=1
Dim itemx As notesitem

While j<=docx.num(0)
ItemID=Cstr(docx.GetItemValue("ItemID_"+Cstr(j))(0))
Agent=docx.GetItemValue("Agent_"+Cstr(j))(0)
S_time=docx.GetItemValue("S_time_"+Cstr(j))(0)
D_time=docx.GetItemValue("D_time_"+Cstr(j))(0)
Real_time=docx.GetItemValue("Real_time_"+Cstr(j))(0)
Hours=docx.GetItemValue("Hour_"+Cstr(j))(0)
Ration=docx.GetItemValue("Ration_"+Cstr(j))(0)
Des=docx.GetItemValue("Des_"+Cstr(j))(0)
Des=Replace(Des,Chr(10)," ")
Des=Replace(Des,Chr(13)," ")
Print |

var jj=|tempNum+j|
sheet1.Cells(jj,2).Value="|ItemID|"
sheet1.Cells(jj,3).Value="|Agent|"
sheet1.Cells(jj,4).Value="|S_time|"
sheet1.Cells(jj,5).Value="|D_time|"
sheet1.Cells(jj,6).Value="|Real_time|"
sheet1.Cells(jj,7).Value="|Hours|"
sheet1.Cells(jj,8).Value="|Ration|"
sheet1.Cells(jj,9).Value="|Des|"
|

j=j+1
Wend



'取值完毕

Set docx=viewx.GetNextDocument(docx)
Wend



Print |
//var NewSheet=wb.worksheets("template")
//NewSheet.Activate
//exApp.Application.Workbooks("template.xls").worksheets("template").delete
//wb.save
wb.saveAs("d:/工作报表.xls")
history.go(-1)

//exApp.quit()
//var wb1=exApp.Workbooks.Open("d:/template.xls");
</script>
|


'dst="d:\ok.xls"
'//Set Ritem=New NotesRichTextItem(notes,"File")
'//Set Object = Ritem.EmbedObject ( EMBED_ATTACHMENT, "", dst)
'//Call notes.save(True,False)

End Sub
athome626 2005-06-23
  • 打赏
  • 举报
回复
是在WEB上的。
wvboat 2005-06-22
  • 打赏
  • 举报
回复
没自己做过,但知道用vba 可以做到
maplescloud 2005-06-22
  • 打赏
  • 举报
回复
如果是在WEB上,把NOTES的页面内容拷贝贴到WORD里面去(用JS来实现)。

535

社区成员

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

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