holin
中學生
離線
文章: 23
|
請教各位先進:
我的巨集是從outlook啟動excel,將信件主旨加入指定的儲存格中,這步驟可正確運作,但在excel上建立超連結的動作完全無效,也不會有error。
以下的程式碼是放在outlook的模組中,
Set MyXL = GetObject("c:\test.xls") …. ….. MyXL.Sheets("sheet1").Hyperlinks.Add anchor:=MyXL.Sheets("sheet1").Range("G35"), _ Address:="C:\test2.xls”, _ TextToDisplay:=” test” … …
該如何修正? 或者我可把建立超連結的巨集放在excel模組,再從outlook巨集呼叫excel中的巨集,這該怎麼做?
|
|
|
|
|
已記錄
|
|
|
|
holin
中學生
離線
文章: 23
|
我已在 工具/設定引用項目 中勾選了 MICROSOFT EXCEL OBJECT LIBRARY了。
|
|
|
|
|
已記錄
|
|
|
|
holin
中學生
離線
文章: 23
|
報告各位先進: 因為我把公作表設為 共用,取消後就可以了。
但還懇請各位指教可何從outlook呼叫excel巨集。
|
|
|
|
|
已記錄
|
|
|
|
呆呆
高中生
離線
文章: 264
|
不是可以了嗎 那為何還要從outlook呼叫 excel巨集 
|
|
|
|
|
已記錄
|
|
|
|
holin
中學生
離線
文章: 23
|
這樣自由度比較大,在自已的物件環境寫程式也較方便。
|
|
|
|
|
已記錄
|
|
|
|
|
|
holin
中學生
離線
文章: 23
|
不是打開文件就執行open事件,而是outlook被特定事件觸發後,再去呼叫excel的巨集。且還有變數要傳遞…
|
|
|
|
|
已記錄
|
|
|
|
呆呆
高中生
離線
文章: 264
|
對阿 用outlook打開excel 如果要傳變數 那就是 先將變數值寫在該excel的工作表中 然後利用 excel 的 Private Sub Workbook_BeforeClose(Cancel As Boolean) 事件
舉個例子 先在outlook中寫一個程序如下,將 Option Explicit
Sub fff()
Dim xlApp As New Excel.Application Dim xlSheet As Excel.Worksheet
xlApp.Workbooks.Open "C:\test.xls" Set xlSheet = xlApp.Sheets(2)
xlSheet.Cells(1, 10) = 65535 '將要傳的變數值傳給儲存格
xlApp.Quit
Set xlApp = Nothing Set xlSheet = Nothing
End Sub
然後在excel 的 This Workbook 寫下before close事件
Option Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean) Sheet1.Activate Dim i As Long Cells.Clear '讀取儲存格 For i = 1 To Sheet2.Cells(1, 10) Cells(i, 1) = i Next i End Sub
|
|
|
|
|
已記錄
|
|
|
|
holin
中學生
離線
文章: 23
|
 ,這樣是一個容易看懂的方法,謝謝。
|
|
|
|
|
已記錄
|
|
|
|
|