Как правильно выполнить запрос из VBA

Узнай цену своей работы

Формулировка задачи:

Как правильно выполнить запрос из VBA с заданным условием ClNum?
ClNum определяется в коде VBA заранее.
Set rsIMP_Start2 = db.OpenRecordset("Select cliennumber, summa From IMP_Start Where cliennumber = ClNum")
Этот запрос выдает ошибку:
Слишком мало параметров. Требуется 1.

Решение задачи: «Как правильно выполнить запрос из VBA»

textual
Листинг программы
<font color="blue">Dim</font> db <font color="blue">As</font> DAO.Database
    <font color="blue">Dim</font> rst <font color="blue">As</font> DAO.Recordset
    <font color="blue">Dim</font> ClNum <font color="blue">As</font> Variant
    
    <font color="blue">Set</font> db = CurrentDb
    
    ClNum = <font color="darkblue"><b>1</b></font>
    
    <font color="00AA00">'Если поле <font color="teal">"cliennumber"</font> - числовое.</font>
    <font color="blue">Set</font> rst = db.OpenRecordset( _
      <font color="teal">"SELECT cliennumber, summa FROM IMP_Start WHERE cliennumber = "</font> & ClNum)
    
    <font color="00AA00">'Если поле <font color="teal">"cliennumber"</font> - строковое.</font>
    <font color="00AA00">'Set rst = db.OpenRecordset( _</font>
      <font color="teal">"SELECT cliennumber, summa FROM IMP_Start WHERE cliennumber = '"</font> & ClNum & <font color="teal">"'"</font>)
    
    <font color="blue">If</font> <font color="blue">Not</font> rst.EOF <font color="blue">Then</font>
        <font color="blue">Do</font> <font color="blue">Until</font> rst.EOF
            Debug.<font color="blue">Print</font> rst.Fields(<font color="darkblue"><b>0</b></font>); rst.Fields(<font color="darkblue"><b>1</b></font>)
            rst.MoveNext
        <font color="blue">Loop</font>
     <font color="blue">End</font> <font color="blue">If</font>
     
     rst.<font color="blue">Close</font>
     <font color="blue">Set</font> rst = <font color="blue">Nothing</font>
     <font color="blue">Set</font> db = <font color="blue">Nothing</font>

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.75 из 5
Похожие ответы