powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / отсутствует значение одного или нескольких параметров
25 сообщений из 39, страница 1 из 2
отсутствует значение одного или нескольких параметров
    #39045576
Igor2015
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кто может подсказать, запросом ниже мне необходимо преобразовать поле и сделать отбор по нему.
однако в результате выдает ошибку отсутствует значение одного или нескольких параметров.
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Dim rCell As Range
For Each rCell In rasd
    If rCell <> "" Then

sSQL = "SELECT  iif(InStr(StrReverse(F1),'.')=1,F1,F1&'.') as fodin FROM `" & imyaButget & "`" & vbCrLf & _
"where fodin = '" & IIf(InStr(StrReverse(rCell), ".") = 1, rCell, rCell & ".") & "';"

Set rsScores = New ADODB.Recordset
rsScores.Open sSQL, cn, 3, 3
rCell.Cells(1, 11).CopyFromRecordset rsScores

    End If
Next rCell
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39045592
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) Это гениально - объявить объектную переменную, и сразу же, не присваивая ей значения, начинать по ней итерацию.
2) Не менее гениально - на каждой итерации формировать новую объектную переменную.
3) Зачем указывать, какая именно строка приводит к ошибке? тут народ умный, догадается...
4) Зачем показывать текст полученного запроса? тут народ... ну вы поняли.
5) Использование тегов - это для слабаков.
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39045603
Igor2015
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina, в запросе ошибка, гений))
чтоб не смущало очень поверхностное понимание кода напишу только строку запроса.
ошибка в элементе as fodin и отбор по нему.
работает очень быстро даже во множестве итераций, другого выхода пока не вижу.
Есть мысли как объявить правильно переменную и сделать по нему отбор?

Код: vbnet
1.
2.
sSQL = "SELECT iif(InStr(StrReverse(F1),'.')=1,F1,F1&'.') as fodin FROM `" & imyaButget & "`" & vbCrLf & _
"where fodin = '" & IIf(InStr(StrReverse(rCell), ".") = 1, rCell, rCell & ".") & "';"


Модератор: Учимся использовать тэги оформления кода - FAQ

Заранее благодарю.
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39045610
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
покажите значение переменной sSQL на момент возникновения ошибки
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39045617
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Igor2015ошибка в элементе as fodin и отбор по нему
Угу... то есть получается запрос типа:

Код: vbnet
1.
2.
3.
SELECT (что-то) as fodin
FROM (откуда-то)
WHERE fodin = (чему-то)



Сервер СНАЧАЛА выполняет запрос, и только потом присваивает имена полям выходного набора. То есть в момент выполнения запроса этого самого поля fodin тупо не существует.

Да, это немного не так - но в данном случае как раз именно так.
Можешь попробовать вместо WHERE использовать HAVING - авось прокатит.
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39045620
Igor2015
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Pro,
значение переменной на момент ошибки:

Код: plsql
1.
2.
 sSQL = SELECT iif(InStr(StrReverse(F1),'.')=1,F1,F1&'.') as fodin FROM `Бюджет НМЗ$AF20:BI200`
where fodin = '1.1.1.';
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39045629
Igor2015
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina,
нет не выходит.
а как тогда, подзапрос писать?
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39045638
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно и подзапрос. А можно во WHERE писать не имя поля, а вычисляющее его выражение.
Что лучше - зависит от селективности запроса и используемого сервера БД.
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39045648
Igor2015
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina,

а так несоответствие типов в отборе. я уже все перепробовал, убил кучу времени.

Код: plsql
1.
2.
[SRC PLSQL]sSQL = "SELECT iif(InStr(StrReverse(F1),'.')=1,F1,F1&'.') FROM `" & imyaButget & "`" & vbCrLf & _
"where iif(InStr(StrReverse(F1),'.')=1,F1,F1&'.') = '" & IIf(InStr(StrReverse(rCell), ".") = 1, rCell, rCell & ".") & "';"

[/SRC]
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39045694
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну вот опять... да кому нахрен нужен код формирования строки запроса? Показывай содержимое переменной, сам запрос, выполнение которого приводит к ошибке.
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39045839
Igor2015
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina,

блин, все написал, че еще надо?
есть предложения?
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39045850
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Igor2015,

не, ну как хочешь конечно, раз помощь не нужна.

попробуй выполнить запрос без where
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39045852
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
что за база данных?
ты используешь ф-ии VB внутри запроса:

Код: vbnet
1.
SELECT  iif(InStr(StrReverse(
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39045893
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_Oneчто за база данных?Igor2015блин, все написал, че еще надо?
есть предложения?

Судя по всему, автор использует Jet к экселевскому листу (хоть и не удосужился нам это рассказать). Там можно использовать iif и instr, насчет strreverse - не факт
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39045913
Igor2015
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Konst_One, база - лист книги excel.
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39045933
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Igor2015блин, все написал, че еще надо?
Да ни хрена ты не написал того, что надо!
Igor2015есть предложения?
Да.
Shocker.Proпокажите значение переменной sSQL на момент возникновения ошибки
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39045941
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На самом деле, лучше приложить тестовый файл. А то может там столбца F1 вообще нет.
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39045944
Igor2015
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Igor2015Shocker.Pro,
значение переменной на момент ошибки:

Код: plsql
1.
2.
 sSQL = SELECT iif(InStr(StrReverse(F1),'.')=1,F1,F1&'.') as fodin FROM `Бюджет НМЗ$AF20:BI200`
where fodin = '1.1.1.';



Вот вроде как значение переменной, на мышке есть колесо))
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39045955
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Igor2015Вот вроде как значение переменной, на мышке есть колесо))а вот ответ, на мышке есть колесо
AkinaСервер СНАЧАЛА выполняет запрос, и только потом присваивает имена полям выходного набора. То есть в момент выполнения запроса этого самого поля fodin тупо не существует.
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39045976
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Igor2015 , уж не хочешь ли ты сказать, что при выполнении кода
Код: vbnet
1.
2.
sSQL = "SELECT iif(InStr(StrReverse(F1),'.')=1,F1,F1&'.') FROM `" & imyaButget & "`" & vbCrLf & _
"where iif(InStr(StrReverse(F1),'.')=1,F1,F1&'.') = '" & IIf(InStr(StrReverse(rCell), ".") = 1, rCell, rCell & ".") & "';"


значение переменной стало
Код: vbnet
1.
SELECT iif(InStr(StrReverse(F1),'.')=1,F1,F1&'.') as fodin FROM `Бюджет НМЗ$AF20:BI200` where fodin = '1.1.1.';


Не верю.
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39045989
Igor2015
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina,

уважаемые специалисты, я ж никого не хочу здесь обмануть, нет смысла.
попробую подготовить архив с исполняющими файлами. может чем поможете.
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39046011
Igor2015
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina,
исполняющий файл реестр платежей.
Макросом modul я пытаюсь вытянуть соответствующие пункты из файла книга1 в столбец G файла реестр платежей(столбец G)/
смысл предполагаемого sql в том, что я хочу предусмотреть ошибки ввода точек в написании пунктов столбец С.

Как то так.
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39046047
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В ячейке A3 файла с данными находится Null

Igor2015блин, все написал, че еще надо?а как мы могли об этом догадаться?
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39046095
Igor2015
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Pro,
да я и коннектился для этого с параметром IMEX=1.
ну, а все таки что можно решить?
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39046097
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я назвал причину ошибки, даль уже сам решай, что ты хочешь с этим делать
Хочешь - исправляй файл данных, хочешь - делай условие отбора в sql-запросе
...
Рейтинг: 0 / 0
25 сообщений из 39, страница 1 из 2
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / отсутствует значение одного или нескольких параметров
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]