在VBA

2011-11-24 26 views
-1

我工作的MS Access從記錄集閱讀2010在VBA

我有哪個員工ID和其他一些領域被存儲爲

f123 - - - 
f543 - - - 
f654 - - - 
f123 - - - 

「當一個表我運行

strSQL="Select Distinct emp_id from Tbl" 

Set rs = db.OpenRecordset(strSQL) 
rs.MoveFirst 

Do While Not rs.EOF 
    idVar = rs!Emp_Id 
    rs.MoveNext 
Loop 

在記錄獲得的值是123 543等而不是f123,f543等 當我在查詢設計視圖中運行查詢它完美的作品。請幫助。

+6

你肯定EMP_ID不以某種方式包括「F」格式化?什麼數據類型是Emp_Id? – Fionnuala

+0

我認爲問題不在此代碼段中。如果您告訴我們您的目標以及您如何實現目標,我們可以幫助您更好。 – PowerUser

+0

嘗試將idVar聲明爲字符串:「Dim idVar as String」全部爲 – kiks73

回答

1

上面的代碼不運行。下面的代碼運行 - msgbox包含測試值

Private Sub Command0_Click() 
Dim strSQL As String 
Dim rs As Recordset 
Dim idVar As String 

strSQL = "Select Distinct emp_id from Tbl" 

Set rs = CurrentDb.OpenRecordset(strSQL) 
rs.MoveFirst 

Do While Not rs.EOF 
    idVar = rs!Emp_Id 
    MsgBox idVar 'check value 
    rs.MoveNext 
Loop 
End Sub 
+2

這不是答案。上面的代碼沒有錯,它是一個片段。我很想投票,但我會承擔一個誤解。 – Fionnuala

0

我試圖重新創建問題沒有任何成功,我害怕。

請參閱屏幕轉儲。不知道這是否會幫助你。

感謝馬克 Screen dump of code running in debug mode

+0

你是user1063226嗎?如果是這樣,你需要張貼表格的細節,根據我對原帖的評論。此外,在StackOverflow中,你通過編輯添加到你的問題中,這個區域保留給問題的答案。 – Fionnuala