私はこれを約1時間続けてきましたが、関数をエラーなしで実行することはできません。私はthisページからAllen BrowneのELOOKUP関数を使用しています。ここでAllen BrowneのELOOKUPでエラー:あまりにも少ないパラメータ
は現在、パブリック関数を呼び出すコードです:
Dim r As Double
Dim Q1 As Double
Dim i1 As Double
r = Me!txtRepeat
Q1 = Me!txtQty1
i1 = ELookup("dblIndex", "zhqry_ActiveGrid_3_Final", "dblRepeat = " & r & " AND dblQuantity <= " & Q1, "dblQuantity DESC")
私はエラーを取得「がいくつかのパラメーター:期待を1.」
Iは、コードを介して段付きとあったます。strSQLを抽出することができたました:
SELECT TOP 1 dblIndex
FROM zhqry_ActiveGrid_3_Final
WHERE dblRepeat = 12 AND dblQuantity <= 55
ORDER BY dblQuantity DESC;
実際のエラーがELOOKUP関数のこの行にスローされる:
Set rs = db.OpenRecordset(strSql, dbOpenForwardOnly)
私が試みました。
- すべてのフィールド名を角カッコで囲みます。同じエラー。
- 私の基準値の回りに一重引用符を付ける。同じエラー。
- 変更された機能行:
Set db = DBEngine(0)(0)
〜set db = CurrentDb
、同じエラー。 dbOpenForwardOnly
からdbOpenSnapshot
に変更されました。同じエラー。
私はstrSQLの値をAccessのクエリービルダーにコピーしたので、有効な文字列を作成していることが分かりました。私はAccess 2010を使用しています。
何が間違っていますか? ELookupの
hmmm、あなたは 'set rs = db.OpenRecordset(strSql)'を試してみましたか –
@GaryEvansちょうど同じエラーを試みました。 – MoondogsMaDawg
'zhqry_ActiveGrid_3_Final'(またはそのサブクエリ)は、例えば以下のようなパラメータを持っていますか? 'Forms!myForm!myValue'? Accessでクエリを開くときに評価されますが、レコードセットを開くときには評価されません。 - 「ELookup()の制限事項:」を参照してください。DLookup()は式サービスを呼び出して引数を解決することができます.. " – Andre