|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
26.07.2008, 13:00 | #1 |
Пользователь
Регистрация: 26.07.2008
Сообщений: 17
|
Раньше это называлось "макроподстановка"
Заканчиваю проект на MVB, требуется суммировать содержимое нескольких одинаковых таблиц. Имена полей могут быть самыми разными, то есть требуется выполнять (в циклах) команду типа:
rst1![field1]=rst1![field1]+rst2![field2] Имена полей у меня храняться в массиве, но компилятор MVB (Microsoft Access 2003) не пропускает (не понимает) мои попытки "впихнуть" эту конструкцию в функцию Eval. Какие у Вас есть предложения? |
26.07.2008, 14:27 | #2 |
Форумчанин
Регистрация: 06.03.2008
Сообщений: 352
|
Ничего не понял
Выкладывайте код. Желательно в тэге [CODE][/CODE], он вставляется кнопкой #
|
26.07.2008, 14:58 | #3 |
Пользователь
Регистрация: 26.07.2008
Сообщений: 17
|
Просят уточнений
В прикидочном варианте программы всё хорошо считается, когда имена полей таблиц явно указаны, привожу проблемую команду:
Код:
Но в окончательном варианте программы (из-за погони за универсальностью) заранее не известны конкретные имена полей (здесь это "field1" и "field2"): имена конкретных полей храняться в массиве Код:
|
26.07.2008, 15:07 | #4 |
Форумчанин
Регистрация: 06.03.2008
Сообщений: 352
|
Странно
Массив имён вроде бы должен быть двумерным - для каждой таблицы свои имена, насколько я понял. Ну да дело хозяйское.
Код:
Последний раз редактировалось дмидми; 26.07.2008 в 15:09. |
26.07.2008, 15:26 | #5 |
Пользователь
Регистрация: 26.07.2008
Сообщений: 17
|
Привожу Ваш вариант введенный в мою реальную программу:
Код:
Error 3265 "Элемент не обнаружен в данном семействе". Может быть у меня не подключена какая-либо компонента/библиотека? |
26.07.2008, 15:42 | #6 |
Форумчанин
Регистрация: 06.03.2008
Сообщений: 352
|
Придвиньте Ваш монитор ко мне поближе!
Где описания переменных?
Чему к моменту возникновения ошибки равны Lrab, KolFi0, MassNameFields(Lrab) ? Совпадает ли последнее с именами нужных полей в обеих таблицах (в первом Вашем варианте имена были разными)? Лучше всего - создать ма-а-аленькую БД, в которой будут эти две таблички (не полностью, только нужные поля и, скажем, три записи) и модуль, выполняющий то, что мы обсуждаем. В расширенном режиме внизу - фрейм Дополнительные опции, в нем - ссылка Управление вложениями. Глядишь, пока такая БД создаётся, проблема решится сама Последний раз редактировалось дмидми; 26.07.2008 в 15:46. |
26.07.2008, 16:10 | #7 |
Пользователь
Регистрация: 26.07.2008
Сообщений: 17
|
Благодарность
Спасибо! Ваш вариант "обхода" конкретных имен сработал (через "rst.Fields(mass(i))"). Уточняя объявления массивов (глобальных и локальных) я нашел неточность, которая не позволила сразу заработать Вашему фрагменту. Моя проблема решена! Может быть "проблема отсутствия макроподстановки" надумана и всегда можно найти подобный обходной маневр? Удачи!
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ошибка при использовании OlePropertyGet("Documents").OleProcedure("Add") в C++ Builder | AleksP | C++ Builder | 7 | 11.04.2009 13:06 |
если пользователь наберет какой-то другой символ не "y" или "n" и нажмет enter, программа проигнорирует | skobets | Общие вопросы C/C++ | 2 | 03.06.2008 06:51 |
Excel файл открывается не "до конца" (странички "не показываются" только серое поле) | Dorvir | Microsoft Office Excel | 2 | 28.03.2008 10:03 |
Создаю диаграмму "Bar". Подскажите как убрать растояние между "столбами" | MAcK | Компоненты Delphi | 11 | 24.10.2007 10:49 |
На чем пишутся стратегии типа "Казаков" и "Эпохи империи" | Tayfun | Свободное общение | 3 | 26.06.2007 20:27 |