2013-05-16 55 views
0

我正在嘗試第一次使用Lotus私人視圖,並最終做出了私人視圖。如何將數據從Lotus專用視圖導出到Excel文件中?

現在我需要將此視圖導出爲ex​​cel文件...可以運行一個lotusscript來執行此操作嗎?

我不是管理員,所以我沒有運行代理的權限。

怎麼樣?

tks!

回答

0

您可以導出爲Excel可以讀取的CSV文件,而且您不需要進行任何編程。只需打開視圖,拉下文件菜單並選擇導出。在「導出」對話框中輸入文件名,並在「另存爲類型」下拉列表中選擇「逗號分隔值」。應該出現一個小的CSV導出對話框,您可以選擇一些非常簡單的選項。

+0

Tks但...我怎麼能做到這一點?類似於「queryopen」運行導出代碼爲excel ... – Hugo

+0

您可以使用@Command([FileExport]; fileType; fileName)以公式語言自動執行它。不過,我相信最後的選項對話框會出現,您將不得不點擊「確定」才能完成導出,所以它只會部分自動化。 –

+0

順便說一句:我認爲QueryOpen可能不是嘗試自動導出的正確位置,因爲QueryOpen實際上是在視圖打開之前發生的 - 因此視圖尚未加載,所以我懷疑您可以導出它。 –

1

是的,可以編寫一個LotusScript代理來導出。但是如果視圖包含所有需要的數據並且沒有太多文檔,那麼只需在用Ctrl + A選擇所有文檔後單擊鼠標右鍵單擊一個文檔,然後單擊「複製爲表格」 然後將結果粘貼到Excel中。 ..

要編寫lotusScript-代理導出數據,你需要這樣做的權利,通常管理員不給的權利,「正常」的用戶...

如果你有正確和知識做這樣的事情,那麼它會看起來像這樣在一個代理,導出視圖的完整內容(未測試):

Dim ws as New NotesUIWorkspace 
Dim viw as NotesView 
Dim viwNav as NotesViewNavigator 
Dim ve as NotesViewEntry 
Set viw = ws.CurrentView.View 
Set viwNav = viw.CreateViewNavigator 

Dim xlApp As Variant 
Dim xlsheet As Variant 

Set xlApp = CreateObject("Excel.Application") 
xlApp.Visible = True 
xlApp.Workbooks.Add 
Set xlsheet = xlApp.Workbooks(1).Worksheets(1) 
Set ve=viwNav.GetFirstEntry() 
Col = 1 
Row = 1 
While not ve is Nothing 
    Forall colval in ve.ColumnValues 
    xlsheet.Cells(row,col).Value = colval 
    Col = col + 1 
    End Forall 
    Set ve = viwNav.GetNextEntry(ve) 
    Row = Row + 1 
Wend 

這並沒有考慮到,ColumnValues可以是數組(取決於視圖設置),沒有錯誤處理並且不檢查任何有效性... 但是它可以作爲開始的基礎...

+0

我把這段代碼放在查看器設計上»QueryOpen,但代碼有錯誤...:/ – Hugo

+0

是的,那就是我說的:它沒有經過測試,可能包含錯誤。你沒有告訴,你想這樣做自動...這個代碼可能會在QueryOpen工作,但作爲書面:它只是一個基地開始... –

+0

這個問題已經被撞到StackOverflow的首頁進行審查,這引起了我的注意。對於自動化,我感覺QueryOpen不是正確的地方,因爲QueryOpen腳本在視圖打開之前運行。我有一種感覺,在打開視圖之前無法創建ViewNavigator。我會把它放在私人視圖中的一個Action按鈕上。 –

0

在UI中執行此操作的最佳方式是選擇所有文檔(CTRL + A),然後從編輯菜單使用副本/表格。然後粘貼到Excel中。

您可以刪除第一列(doclinks)。

這種方法不能用@Formula或Lotusscript重現。