powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / отсутствует значение одного или нескольких параметров
39 сообщений из 39, показаны все 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
отсутствует значение одного или нескольких параметров
    #39046110
Igor2015
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Pro,

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

я не недоволен, ты не обязан ничего никому, просто на вскидку решение меня не устраивает.
я не такой профессионал, чтоб с двух слов понять что ты имеешь ввиду.

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

Igor2015я не такой профессионал, чтоб с двух слов понять что ты имеешь ввиду.Что за формат ты убрал, я отсюда не понимаю, что за ноль ты убрал - не понимаю тоже (я про Null вообще-то говорил), я не экстрасенс, чтобы с двух слов понять, что ты имеешь ввиду.
Выложи то, что у тебя в итоге получилось, скажу, в чем теперь проблема.

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

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

убрал нулевую ячейку в файле данных(A3), поменял формат A:A общий на текстовый.
пишет ошибка несоответствие данных. ссылается на запуск запроса open sSQL.

запрос обрабатывается нормально и выводит select без проблем, до тех пор как я не начинаю отбор where по вычисляемому выражению.

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

попробуй вот такой запрос
Код: vbnet
1.
2.
sSQL = "SELECT top 1 iif(InStr(StrReverse(F1),'.')=1,F1,F1&'.') FROM `" & imyaButget & "` " + _
"where iif(InStr(StrReverse(iif(isnull(F1),'',F1)),'.')=1,F1,F1&'.') = '" & IIf(InStr(StrReverse(rCell), ".") = 1, rCell, rCell & ".") & "';"
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39046150
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Igor2015убрал нулевую ячейку в файле данных(A3)ну она же не одна там такая
Igor2015поменял формат A:A общий на текстовый.формат не имеет значения при выборке через ADO
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39046153
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Proпопробуй вот такой запроссорри, не то, промежуточный вариант был...

Код: vbnet
1.
2.
sSQL = "SELECT iif(InStr(StrReverse(iif(isnull(F1),'',F1)),'.')=1,F1,F1&'.') FROM `" & imyaButget & "` " + _
"where iif(InStr(StrReverse(iif(isnull(F1),'',F1)),'.')=1,F1,F1&'.') = '" & IIf(InStr(StrReverse(rCell), ".") = 1, rCell, rCell & ".") & "';"
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39046157
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кстати, вместо конструкции InStr(StrReverse( можно использовать функцию InStrRev
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39046161
Igor2015
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Pro,

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

1A) Есть проблема (код, строка ошибки, получившийся запрос, приложенный тестовый файл)
2Q) Null в ячейке А3
3A) Не могу менять исходные данные, как изменить запрос?
4Q) Так....
5A) Спасибо!

В общем, меньше эмоций, больше по делу!
...
Рейтинг: 0 / 0
отсутствует значение одного или нескольких параметров
    #39046166
Igor2015
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Pro,
ок))
...
Рейтинг: 0 / 0
39 сообщений из 39, показаны все 2 страниц
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / отсутствует значение одного или нескольких параметров
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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