2017-10-20 56 views
1

我試圖讓使用SQL語句從數據庫訪問數據,如具有可變如何將一個變量放入vba中的一個類似聲明中?

變量是一個字符串「mrcTrx」

轉到在評論中*******得到直接點。

我知道它不是什麼大不了的,但我找不到答案謝謝!

的代碼的其餘部分是好的曲子,如果我一個把用於爲例「05」的代碼值的作品完美

Sub GetMun() 

      Dim cn As Object 
      Dim rs As Object 
      Dim intColIndex As Integer 

      Dim TargetRange As Range 
      Dim mrcMun As String 
      Dim mrcTrx As String 
      Dim reg As String 

      mrcTrx = Val(Range("D2").Value) 

      If Len(mrcTrx) < 2 Then 

       mrcTrx = "0" + mrcTrx 

      End If 



      Debug.Print mrcTrx 

      Dim totalGP As Integer 
      Dim debutRng As String 

      totalGP = Sheets("T1").Range("G247").Value 

      debutRng = "D" & 250 + totalGP 


     mrcMun = "D:\FicheMacro\Mun\PréparationTRX par Munic.mdb" 

     'On Error GoTo ErrorGetGPmun 

     Application.ScreenUpdating = False 

     Set TargetRange = Sheets("T1").Range(debutRng) 

     Set cn = CreateObject("ADODB.Connection") 
     cn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & mrcMun 
'******* 
     Set rs = CreateObject("ADODB.Recordset") 
     rs.Open "SELECT MUNIC FROM Munic_en_MAJ_par_MRC WHERE MRC LIKE ' & mrcTrx & ' ", cn, , , adCmdText 


      TargetRange.CopyFromRecordset rs 



     Application.ScreenUpdating = True 


    rs.Close 
    Set rs = Nothing 
    cn.Close 
    Set cn = Nothing 

    Exit Sub 



ErrorGetGPmun: 

    MsgBox "Valider le type de trx et l'entête de la T1", vbExclamation, "La Fiche! GP" 


End Sub 

回答

1

你有不正確的語法

"SELECT MUNIC FROM Munic_en_MAJ_par_MRC WHERE MRC LIKE '" & mrcTrx & "'" 

當把一個變量在字符串中一定要正確使用"&

+0

不工作錯誤類型 –

+0

你得到的錯誤信息是什麼? – Maldred

+0

哈哈,諷刺!我錯過了另一個「&」,現在試試吧,它應該可以工作:) – Maldred