Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Access
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.02.2015, 08:23   #1
evdss
Пользователь
 
Регистрация: 12.10.2010
Сообщений: 66
По умолчанию слишком мало параметров

Добрый день!
Подскажите, пожалуйста, что не так? Жалуется на Set rsd = CurrentDb.OpenRecordset(strSQL)
Выдается сообщение слишком мало параметров
private Sub печать_Click()

'Объявляем переменные
Dim XL As Object
Dim XLT As Object
Dim newrow As Object
Dim db As Database
Dim qr As QueryDef
Dim rsd As DAO.Recordset
Dim strSQL As String
Set qr = CurrentDb.QueryDefs("реестр")
'Запрос к базе данных
strSQL = qr.SQL
qr.Close
Set rsd = CurrentDb.OpenRecordset(strSQL)

End Sub

Последний раз редактировалось evdss; 10.02.2015 в 08:26.
evdss вне форума Ответить с цитированием
Старый 11.02.2015, 08:30   #2
evdss
Пользователь
 
Регистрация: 12.10.2010
Сообщений: 66
По умолчанию

запрос такой
strSQL=SELECT вызов.дата_письмаС, вызов.окпо, makepadeg([фио_гс],3) AS фио, (PersonDescription([фио_гс],True,[должность],[наименование],3,True)) AS адресат, гс.адрес, вызов.индекс_отдела, вызов.окуд
FROM гс INNER JOIN вызов ON гс.окпо = вызов.окпо
ORDER BY вызов.дата_письмаС, вызов.окпо, makepadeg([фио_гс],3);
кроме этого надо вставить where
процедура
Dim XL As Object
Dim XLT As Object
Dim newrow As Object
Dim db As Database
Dim qr As QueryDef
Dim rsd As DAO.Recordset
Dim датап As Date
Dim j As Currency
Dim strSQL As String
Set qr = CurrentDb.QueryDefs("реестр_excel")
'Запрос к базе данных
strSQL = qr.SQL
qr.Close
strSQL = Replace(strSQL, ";")
strSQL = strSQL & " WHERE (((вызов.дата_письмаС)=forms!реестр П!датасп) And ((вызов.индекс_отдела)=forms!вызов! индекс_отдела))" & ";"
Set rsd = CurrentDb.OpenRecordset(strSQL)
подскажите, пожалуйста, что не так, без where все работает, сам запрос с where работает

SELECT вызов.дата_письмаС, вызов.окпо, makepadeg([фио_гс],3) AS фио, (PersonDescription([фио_гс],True,[должность],[наименование],3,True)) AS адресат, гс.адрес, вызов.индекс_отдела, вызов.окуд
FROM гс INNER JOIN вызов ON гс.окпо=вызов.окпо
WHERE (((вызов.дата_письмаС)=forms!реестр П!датасп) And ((вызов.индекс_отдела)=forms!вызов! индекс_отдела))
ORDER BY вызов.дата_письмаС, вызов.окпо, makepadeg([фио_гс],3);

Последний раз редактировалось evdss; 11.02.2015 в 12:17.
evdss вне форума Ответить с цитированием
Старый 11.02.2015, 13:48   #3
shanemac51
Участник клуба
 
Аватар для shanemac51
 
Регистрация: 12.08.2010
Сообщений: 1,077
По умолчанию

Код:
Sub mm150211()
Dim XL As Object
Dim XLT As Object
Dim newrow As Object
Dim db As Database
Dim qr As QueryDef
Dim rsd As DAO.Recordset
Dim датап As Date
Dim j As Currency
Dim strSQL As String
Set qr = CurrentDb.QueryDefs("реестр_excel")
'Запрос к базе данных
strSQL = qr.SQL
qr.Close
strSQL = Replace(strSQL, ";", "")
strSQL = strSQL & " WHERE (((вызов.дата_письмаС)=forms![реестр П]!датасп)"
strSQL = strSQL & " And ((вызов.индекс_отдела)=forms!вызов! индекс_отдела))" & ";"
''у вас одновременно две формы открыты?
''и в поле (реестр п ) пробел в середине
''-----------------------------------
''контроль в окне отладки , что вы насцепляли !!!!!!!!!!!

Debug.Print strSQL
Set rsd = CurrentDb.OpenRecordset(strSQL)

''''''''''''''''''''''''''''
''SELECT вызов.дата_письмаС,
'' вызов.окпо,
'' makepadeg([фио_гс],3) AS фио,
'' (PersonDescription([фио_гс],True,[должность],[наименование],3,True)) AS адресат,
'' гс.адрес , вызов.индекс_отдела, вызов.окуд
''FROM гс INNER JOIN вызов ON гс.окпо = вызов.окпо
''ORDER BY вызов.дата_письмаС, вызов.окпо, makepadeg([фио_гс],3)
'' WHERE (((вызов.дата_письмаС)=forms![реестр П]!датасп)
'' And ((вызов.индекс_отдела)=forms!вызов! индекс_отдела));


End Sub
Имя-Галина== почта shanemac51@yandex.ru скайп shanemac51 c 8-15мск будни
Сфера интересов--word-excel-access-распознавание
shanemac51 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Здравствуйте, возможно слишком просто, но у меня СЛИШКОМ начальный уровень green fox Помощь студентам 2 18.12.2014 21:26
CurrentDb.OpenRecordset Слишком мало параметров. Требуется 1 Stilet Microsoft Office Access 3 18.10.2011 13:25
времени мало PROsent Помощь студентам 2 08.02.2010 21:35
Слишком много актуальных параметров... extrimportal Общие вопросы Delphi 7 22.04.2009 22:41
Пишет, мол мало параметров azat БД в Delphi 11 23.01.2008 10:46