access將SQL語句從查詢複製到VBA

2019-10-21 15:52:00
Allen Browne
翻譯
184

在access vba中,因爲要對錶中數據的操作,編寫代碼經常需要調用SQL語句。

我們通常不會在VBA代碼中鍵入複雜的查詢語句,而是在查詢的設計視圖中創建一箇查詢,將其切換到SQL視圖,複製併粘貼到VBA中。

但是如果sql語句太長,我們需要摺行,衕時要整理引號和行尾



1. 創建一箇新窗體,添加一箇選項卡控件,的第一頁中,添加一箇未綁定的文本框,名爲“txtSql”。
2. 在選項卡控件的第二頁,添加另一箇未綁定的文本框,將其命名爲“txtVBA ”。
3. 最後添加命令按鈕,將其命名爲“cmdSql2Vba”。



詳細按鈕代碼:

Private Sub cmdSql2Vba_Click()

    Dim strSql As String
    'Purpose:   Convert a SQL statement into a string to paste into VBA code.
    Const strcLineEnd = " "" & vbCrLf & _" & vbCrLf & """"
    
    If IsNull(Me.txtSql) Then
        Beep
    Else
        strSql = Me.txtSql
        strSql = Replace(strSql, """", """""")  'Double up any quotes.
        strSql = Replace(strSql, vbCrLf, strcLineEnd)
        strSql = "strSql = """ & strSql & """"
        Me.txtVBA = strSql
        Me.txtVBA.SetFocus
        RunCommand acCmdCopy
    End If

End Sub



    分享