我在從MS Access 2010數(shù)據(jù)庫中創(chuàng)建的查詢中運行記錄集時遇到問題。這是我要運行的代碼:Private Sub Command192_Click()Dim recs As StringDim param As IntegerDim rs As RecordsetSet rs = CurrentDb.OpenRecordset("UnitRec_Qry", dbOpenDynaset)With rs.MoveLast.MoveFirstWhile Not .EOFrecs = recs & vbNewLine & !Spara & " - " & !Rec.MoveNextWendEnd WithMsgBox (recs)End Sub這應(yīng)該輸出的是一個消息框,其中包含列表中查詢的許多記錄。我這樣做是為了將它和許多其他記錄收集到一個文本文件中,以進行復(fù)制和粘貼到一個單獨的系統(tǒng)中。目前,我正在運行這段代碼,以便將其全部放入一個字符串變量中。我的問題是我遇到了可怕的“參數(shù)太少,預(yù)期為1”錯誤。該查詢有效,我將其保存到數(shù)據(jù)庫中并進行了測試,并獲得了預(yù)期的結(jié)果。我嘗試使用SQL運行記錄集:Set rs = CurrentDb.OpenRecordset("SELECT UnitRecommend_tbl.URecID, UnitRecommend_tbl.Spara," _& " UnitRecommend_tbl.Rec, UnitRecommend_tbl.SvyID" _& " FROM UnitRecommend_tbl" _& " WHERE ((UnitRecommend_tbl.SvyID) = [Forms]![SurveyRegister_frm]![SurveyID])" _& " ORDER BY UnitRecommend_tbl.Spara;", dbOpenDynaset)我犯了同樣的錯誤我再次運行它,但是刪除了“ WHERE”語句,代碼運行得很好,但是給了我表中的每條記錄。不是我想要的因此,這些字段可以正常運行,因為數(shù)據(jù)可以運行。當我調(diào)試文本時,SQL中的參數(shù)確實顯示為正確的參數(shù),在這種情況下,數(shù)字4是整數(shù)。因此,我在這里不知所措,我在這里搜索了其他帖子,并嘗試了這些可能的解決方案(除非我錯過了什么)。我也嘗試使用dbopensnapshot,仍然沒有樂趣。想知道我現(xiàn)在是否在使用正確的代碼。任何幫助都會很棒。
- 1 回答
- 0 關(guān)注
- 539 瀏覽
添加回答
舉報
0/150
提交
取消