VBA包含功能

问题描述:

我目前正在连接到SQL服务器,并且只要它在给定条件匹配的检索数据的Excel函数。VBA包含功能

Public Function VehModelUnitsCount(VehModel As String, fran As String, Site As Integer, SaleType As String, StartDate, EndDate, New As Integer) As Variant 
Application.Volatile 
If adoCN Is Nothing Then Call SetUpConnection 
Set adoRS = New ADODB.Recordset 
EvoStartDate = Format(StartDate, "yyyy/mm/dd") 
EvoEndDate = Format(EndDate, "yyyy/mm/dd") 
strSQL = "SELECT COUNT(*) As RCOUNT FROM CARTYPES RIGHT OUTER JOIN CARS ON CARTYPES.Description = CARS.Type LEFT OUTER JOIN CARS2 ON CARS.[Stock Number] = CARS2.[Stock Number]" & Chr(13) 
strSQL = strSQL & "WHERE (CARTYPES.NewSale = " & New & ")" & Chr(13) 
strSQL = strSQL & "AND (CARTYPES.Franchise = '" & fran & "')" & Chr(13) 
strSQL = strSQL & "AND (CARTYPES.Site = " & Site & ")" & Chr(13) 
strSQL = strSQL & "AND (CARTYPES.SaleTypeDesc = '" & SaleType & "')" & Chr(13) 
strSQL = strSQL & "AND (CARS2.InvoiceDate BETWEEN '" & StartDate & "' AND '" & EndDate & "')" & Chr(13) 
strSQL = strSQL & "AND (CARS.Invoiced = '1')" & Chr(13) 
Rem strSQL = strSQL & "AND (CARS.Model = '" & VehModel & "')" & Chr(13) 
[THIS ONE] - strSQL = strSQL & "AND (CARS.Model CONTAINS '" & VehModel & "')" & Chr(13) 
adoRS.Open strSQL, adoCN, adOpenForwardOnly, adLockReadOnly 
VehModelUnitsCount = adoRS.Fields("RCOUNT").Value 
adoRS.Close 
End Function 

标有[此ONE]字符串是一个我挣扎,我需要找出细胞是否包含给定的字符串,但显然用“包含”不工作。

上完成,这将是惊人的任何帮助。

谢谢。

+0

尝试这样的:'并包含(CARS.Model, ' “&VehModel&”')' –

你可以尝试 -

strSQL = strSQL & "AND (CARS.Model LIKE '%" & VehModel & "%')" & Chr(13) 
+0

工程就像一个魅力,谢谢! – MrDKOz

+1

@MoonPunch - 如果它的工作原理,以及您的意见建议,您应该点击“接受”刻度这个答案旁) –

+0

我尽快去,因为我读你的答案,但它告诉我要等它:)已经完成! – MrDKOz