簡體   English   中英

Excel VBA寫入Access中的特定字段和值

[英]excel vba writing to specific field and value in Access

我正在構建一個excel應用程序,該應用程序能夠根據用戶的輸入列出工具。 通過此輸入,他們可以單擊工具(在這種情況下,工具是不同的excel文件),然后打開新工具。 由於我在遠程服務器上運行此應用程序,並且許多人都可以使用這些工具,因此我想創建一個更新,在Access數據庫中的isLocked字段包含所有工具信息(該工具的其他字段包括名稱,路徑, 項目編號)。 所以我的問題是,如何查看用戶打開的工具,然后進入訪問數據庫並將isLocked字段更改為YES? 我想我最終正在尋找一種特定類型的SQL語句...

謝謝你的幫助。

我假設您可以將其添加到打開用戶選擇的Excel文件“工具”的代碼中。 其他假設包括:tblExcelTools作為表名; 一個數字主鍵字段,tool_id; 一個名為cboToolChooser的組合框控件,其綁定字段為tool_id。

Dim strSql AS String
strSql = "UPDATE tblExcelTools" & vbCrLf & _
    "SET isLocked = -1" & vbCrLf & _
    "WHERE tool_id = " & Me.cboToolChooser
Debug.Print strSql ' look in Immediate window (Ctrl+g) if problems '
CurrentDb.Execute strSql, dbFailonerror

您應該添加一個錯誤處理程序來處理dbFailonerror出現的任何問題。

我認為大致類似的方法可以滿足您的近期目標---當用戶打開工具時,將isLocked設置為-1(True)。 但是,當用戶使用完該工具后,我不知道如何將isLocked設置為False。

編輯 :我建議該代碼示例認為您可以從Access中運行它,但是您正在從Excel中運行它。 我不在用戶表單中使用Excel。 也許該代碼可以簡單地適用於ADO。 打開與Access數據庫的ADO連接,然后使用: cn.Execute strSql

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM