2017-02-04 71 views
0

這段代碼不是由我自己編寫的,一位朋友不再和我們在一起,他對VB有更深的瞭解,並在2000年爲我寫了這篇文章。它需要一個輸入和決定它是客戶名稱,郵編,電話號碼還是手機號碼。現在隨着手機號碼的激增,我需要爲第二個手機號碼添加第二個字段。我有一個名爲C_FAX的備用字段,我可以使用它,所以我需要在輸入手機號碼時能夠搜索兩次C_MOBILE和C_FAX,我只是複製手機的DoCmd並將搜索字段更改爲C_FAX,工作,我能夠在C_FAX字段中找到手機號碼,但沒有在C_MOBILE字段中找到它。任何建議將受到感謝。非常感謝尼爾如何在VB中搜索表中的兩個字段

Private Sub SearchText_AfterUpdate() 
PhoneSearch = PhoneFix(Me!SearchText) 
If Me![SearchText] Like "*[A-Z]#*" Then 
' postcode 
DoCmd.OpenForm "custom1", , , "[C_POSTCODE] like('" & Me![SearchText] & "*')" 

ElseIf InStr(PhoneSearch, "07") = 1 Then 
'mobile 
DoCmd.OpenForm "custom1", , , "[C_MOBILE] like('" & PhoneSearch & "*')" 

ElseIf InStr(PhoneSearch, "0") = 1 Then 
'phone 
DoCmd.OpenForm "custom1", , , "[C_PHONE] like('" & PhoneSearch & "*')" 

ElseIf Me![SearchText] Like "2*" Then 
' cust_code 
DoCmd.OpenForm "custom1", , , "[CUST_CODE] like('" & Me![SearchText] & "*')" 

ElseIf Not IsNull(Me![SearchText]) Then 
'name 
DoCmd.OpenForm "custom1", , , "[C_NAME] like('*" & Me![SearchText] & "*')" 

End If 

Forms!entry!Comment = " " 
Me.Requery 
Refresh 
End Sub 
+0

這是Access嗎?如果是的話請使用Access標籤。 –

+0

是的,它是Access內的Visual Basic。好吧,我會感謝尼爾 –

回答

0

你需要一個OR statement添加到代碼讀取新的第二場額外的手機。例如,可以將此字段稱爲SearchText2和您的可變PhoneSearch2:

PhoneSearch2 = PhoneFix(Me!SearchText2) 

ElseIf InStr(PhoneSearch, "07") = 1 Or InStr(PhoneSearch2, "07") = 1 Then 

' do your thing 
+0

謝謝你肯定指出我在正確的答案,這是它實際上看起來像DoCmd.OpenForm「custom1」,,「[C_MOBILE]像('」&PhoneSearch&「*')或[C_FAX] like(''&PhoneSearch&「*')」 –