您可以使用 DDESend 函數啟動動態資料交換 (DDE) 與其他應用程式交談,並從表單或報表上的控件傳送資訊專案至該應用程式。
例如,您可以在文字框的 ControlSource 屬性中使用 DDESend 函數,將文字框中顯示的數據傳送到 Microsoft Office Excel 2007 電子表格中的指定儲存格。
語法
DDESend ( 應用程式、主題、專案、資料 )
DDESend 函數語法具有下列自變數:
引數 |
描述 |
應用程式 |
字串運算式 識別可參與 DDE 交談的應用程式。 應用程式 通常是 .exe 檔案 (的名稱,而非 Microsoft Windows 應用程式的 .exe 擴展名) ,例如 Excel。 例如,若要啟動與Excel的 DDE 交談,請輸入 「Excel」 做為 應用程式 自變數。 |
主題 |
這是應用程式可辨識之主題名稱的字串表達式。主題自變數通常是檔或數據檔。 查看其他應用程式的檔,以取得可能的主題清單。 |
項目 |
這是應用程式可辨識之 資料項目 名稱的字串表示 式。 查看其他應用程式的檔,以取得可能的項目清單。 |
資料 |
包含要傳送至 應用程式之數據的字串或 運算式 。 |
註解
DDESend 函數會啟動與應用程式和主題的 DDE 交談,並將專案識別為會接收數據的數據項。 例如,如果 應用程式 是Excel, 主題 可能會 "Sheet1", 而專案 可能是列與欄標識碼,例如 "R1C1",或是單元格範圍的名稱。
數據 自變數會指定您要傳送的資訊。 它可以是常值字串,例如 "Report prepared by John",也可以是包含建立字串之函數之結果的運算式,例如 "Prepared on " & Date()。 如果 item 參照一個以上的資訊,例如包含多個儲存格的 Excel 工作表中的具名範圍, 則 DDESend 函數會將 數據 傳送至第一個專案。
在下列範例中, DDESend 函數會將字串 "Some text" 傳送到 Excel 工作表中第 1 列第 1 欄的單元格。 您可以在控制元件屬性表的 ControlSource 屬性方塊中,輸入文字框控制件的表示式:
=DDESend("Excel", "Sheet1", "R1C1", "Some text")
假設您想要從 Microsoft Office Access 2007 表單上的 繫結控制項 傳送數據至 Excel 電子表格上的儲存格。 系結控件的 ControlSource 屬性已包含功能變數名稱或表示式。 您可以建立另一個文本框或下拉式方塊,並將其 ControlSource 屬性設定為包含 DDESend 函數的表達式,其中 數據 是系結控件的名稱。 例如,如果您有一個名為 LastName 的系結文字框,您可以建立另一個文本框,並將其 ControlSource 屬性設定為下列專案:
=DDESend("Excel", "Sheet1", "R1C1", [LastName])
這個中間控件必須是文本框或下拉式方塊。 您無法使用綁定控件的名稱做為複選框或選項組 的數據 自變數。
您只能在表單上的文字框、選項組、複選框或下拉式方塊的 ControlSource 屬性設定中使用 DDESend 函數。 您無法從 Visual Basic for Applications (VBA) 模組呼叫 DDESend 函數。
當您使用 DDESend 函數時,控件會在 表單檢視 和 Print Preview 中變成唯讀。 由於 ControlSource 屬性在 [表單檢視] 和 [列印預覽] 中也是唯讀的,因此必須在 設計檢視中變更控件。
Microsoft Windows 和您電腦的記憶體和資源決定可同時開啟的 DDE 交談數目上限。 如果因為 應用程式 無法執行或無法辨識 主題 而無法啟動交談,或是已達到最大交談數目, 則 DDESend 函數會傳回 Null。
附註: 另一個應用程式可能設為忽略您的 DDE 交談要求。 若是如此, DDESend 函數會傳回 Null。 同樣地,您可以設定 Access 忽略來自其他應用程式的要求:按兩下 [檔案] 選單上的 [存取選項],然後按兩下 [應用程式設定] 對話框中的 [進階]。 在 [DDE 作業] 底下,選取 [忽略 DDE 要求]。
祕訣 如果您需要從 Access 操作另一個應用程式的物件,建議您考慮使用 Automation。
下表說明當您將 DDESend 函數與每個控件搭配使用時,其運作方式。
控制項 |
註解 |
文字框或下拉式方塊 |
由於文本框或下拉式方塊在 [表單視圖] 和 [列印預覽] 中顯示為空白,因此您可能會想要將其 Visible 屬性設為 False。 數據 自變數可以參照另一個控件。 下列範例示範如何將名為 LastName 的控件內容傳送至 Excel 工作表: =DDESend("Excel", "Sheet1", "R1C1", [LastName]) |
選項群組 |
[表單檢視] 和 [列印預覽] 中未選取選項組中的單選按鈕。 您可以將其 Visible 屬性設為 False,讓選項群組 (並隱藏其按鈕 ) 。 數據 自變數必須包含數值數據,例如 "2"。 如果 數據 自變數不是數值, 則 DDESend 函數不會傳送資訊, 且專案 不會變更。 |
核取方塊 |
複選框在 [表單檢視] 和 [列印預覽] 中會呈現底紋。 您可能會想要將其 Visible 屬性設 為 False,讓它隱藏起來。 數據 自變數必須包含數值數據,例如 "2"。 如果 數據 自變數不是數值, 則 DDESend 函數不會傳送資訊, 且專案 不會變更。 |