Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.86/86: Рейтинг темы: голосов - 86, средняя оценка - 4.86
3 / 3 / 0
Регистрация: 10.10.2009
Сообщений: 92

Выделение цветом определенной ячейки

28.02.2012, 15:30. Показов 19079. Ответов 113
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Реально ли сделать так, что при нажатии на определенную кнопку на форме - в таблице определенное значение выделялось красным цветом? не все поле в данной графе, а только определенное поле !?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
28.02.2012, 15:30
Ответы с готовыми решениями:

Как в файле access сделать выделение цветом ячейки
Добрый день. Подскажите, как можно сделать чтобы ячейка (вся строка или одна ячейка) выделялась цветом при смене значения. Например заявка...

Выделение записей цветом
Добрый день! Прочел аналогичную тему, но решил создать свою, чтобы избежать путаницы. На форме есть таблица, в которой организован...

Выделение цветом различий
Добрый день! Необходима помощь! Имеется две таблицы с одинаковыми столбцами, ключевые поля в них могут не совпадать. Если ключи...

113
Модератор
Эксперт MS Access
6231 / 2909 / 707
Регистрация: 12.06.2016
Сообщений: 7,839
06.08.2018, 17:00
Студворк — интернет-сервис помощи студентам
Angie,

Я и не смотрю пока ничего. Некогда.

Свежую базу посмотреть постараюсь, но не обещаю.
0
Sk
6 / 6 / 1
Регистрация: 10.03.2016
Сообщений: 304
06.08.2018, 17:18
Capi, понимаю. Ну, если получится. Спасибо

Итак.
В форме фЗанятие есть две подформы - фпБригада и фпВремя.
Поля "вход" и "выход" в фпВремя иногда могут быть не заполнены, поэтому длительность занятия (выход минус вход) в этом случае будет равна 00:00.
В запросе ("зСтатистика") подсчитывается общее время человека в снаряжении "Сн1" (общее время=сумма длительностей всех занятий в этом снаряжении). А если где-то длительность была равна 0 из-за недостающих данных, то значение общего времени будет неверным. Его мне и надо было выделять цветом, показывая, что информация недостоверна из-за недостающих данных (правда выделять только если еще и снаряжение = "Сн1").

Вы, Capi, показали мне в этой самой теме как это делать.

Но если раньше значения "вход" и "выход" записывались в таблицу Бригада, то сейчас появилась промежуточная таблица "Время", куда я перенесла "вход" и "выход", и я банально не могу написать правильно код для поля "QQ" в запросе "зСтатистика" ( которое в дальнейшем используется так: Если [QQ]>0, покрасить ячейку)
Вложения
Тип файла: rar DB1.rar (43.4 Кб, 9 просмотров)
0
Модератор
Эксперт MS Access
6231 / 2909 / 707
Регистрация: 12.06.2016
Сообщений: 7,839
07.08.2018, 11:44
Angie,

Посмотрела.
В запросе "зСтатистика" сразу вылезла ошибка - оказалось, нет пробела перед одним из WHERE.
После правки полезли следующие ошибки.
Вникать в это полностью у меня сейчас нет возможности, там много всего понакручено.
Пока никак.
0
Эксперт MS Access
 Аватар для alvk
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,383
07.08.2018, 14:05
При чём тут цвет поля?
0
Sk
6 / 6 / 1
Регистрация: 10.03.2016
Сообщений: 304
07.08.2018, 21:07
Capi, изменена только маленькая часть Вашего кода.
Цитата Сообщение от Capi Посмотреть сообщение
оказалось, нет пробела перед одним из WHERE
Хорошо, всё равно спасибо

Цитата Сообщение от alvk Посмотреть сообщение
При чём тут цвет поля?
это предыстория. По факту же вопрос чисто по SQL. Хотя сам запрос имеет отношение к решению вопроса, поднятого в этой теме.

Даны два условия Снаряжение="Сн1" и ([выход]-[вход])=0. Надо выбрать те фамилии (КодФИОБр), которые удовлетворяют этим условиям. Все, кроме второго условия (красным), прописано правильно. Вопрос как правильно прописать второе (все это в запросе в поле QQ, весь код запроса не нужно проверять).

QQ: (SELECT TOP 1 КодФИОБр
FROM Бригада
WHERE ((((SELECT КодСнаряженияЗ FROM Занятие WHERE Код_Занятия=КодЗанятияБр))=(SELECT Код_Снаряжения FROM Снаряжение WHERE Снаряжение="Сн1")) AND ((Nz([Время].[выход])-Nz([Время].[вход]))=0)) AND КодФИОБр=СписокЛюдей.Код_СпискаЛюдей)
Миниатюры
Выделение цветом определенной ячейки  
0
Эксперт MS Access
26828 / 14509 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
07.08.2018, 21:34
Цитата Сообщение от Angie Посмотреть сообщение
Даны два условия Снаряжение="Сн1" и ([выход]-[вход])=0. Надо выбрать те фамилии (КодФИОБр), которые удовлетворяют этим условиям
SQL
1
2
3
4
5
6
SELECT Top 1 Бригада.КодФИОБр
FROM (Снаряжение INNER JOIN Занятие 
ON Снаряжение.Код_Снаряжения = Занятие.КодСнаряженияЗ) INNER JOIN (Бригада INNER JOIN Время 
ON Бригада.Код_Бригады = Время.КодБригадыВр) 
ON Занятие.Код_Занятия = Время.КодЗанятияВр
WHERE (Снаряжение.Снаряжение="Сн1") AND (Nz([Время].[вход])=Nz([Время].[выход]))
1
Sk
6 / 6 / 1
Регистрация: 10.03.2016
Сообщений: 304
07.08.2018, 22:04
...(удалить)
Миниатюры
Выделение цветом определенной ячейки  
0
Sk
6 / 6 / 1
Регистрация: 10.03.2016
Сообщений: 304
07.08.2018, 22:16
mobile, прошу прощения, не уточнила в последнем посте (писала это выше несколько раз и для меня это сделалось как бы само собой разумеющееся, хотя, конечно, это вовсе не так)
([выход]-[вход])=00:00, если значения [вход] и/или [выход] не введены! То есть равны они быть не могут. Это временные поля, например вход- 09:41, выход - 12:17.

Мне нужно переделать SQL-выражение, записанное в поле запроса (имя этого поля QQ, к нему в дальнейшем в условном форматировании я обращаюсь, а именно [QQ]>0, поэтому это не целиком запрос, а только его часть, выражение для одного поля).
Изначально оно выглядело вот так для схемы данных без таблицы "Время" (выделена в красный круг на картинке), а параметры "вход" и "выход" принадлежали таблице "Бригада" (на месте пунктирного выделения):

SQL
1
2
3
4
QQ: (SELECT TOP 1 КодФИОБр
FROM Бригада
WHERE ((((SELECT КодСнаряженияЗ FROM Занятие WHERE Код_Занятия=КодЗанятияБр))=(SELECT Код_Снаряжения FROM Снаряжение WHERE Снаряжение="Сн1")) 
AND ((Nz([выход])-Nz([вход]))=0)) AND КодФИОБр=СписокЛюдей.Код_СпискаЛюдей)
и все работало.

Потом я перенесла "вход" и "выход" в новую таблицу "Время". Мне нужно записать аналогичное выражение для QQ, только с учетом новой таблицы и новых связей. По сути, как я понимаю, просто переписать (Nz([выход])-Nz([вход]))=0) с указанием принадлежности полей к другой таблице и указать связь таблиц. Пробовала, но пока ошибки
Миниатюры
Выделение цветом определенной ячейки  
0
Эксперт MS Access
26828 / 14509 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
07.08.2018, 22:51
Условие ((Nz([выход])-Nz([вход]))=0)) непонятно. Какие записи должны остаться? Покажите на Ваших же данных. Имейте ввиду, что Nz([ПолеВремени]) тождественно равно пустой строке, если [ПолеВремени] содержит Null. И равенство нулю выражения ((Nz([выход])-Nz([вход]))=0)) может быть только в случае когда поля входа и выхода одновременно являются нуллами (умный джет переведет пустые строки в нули).

В остальном предложенный мной запрос точно отражает Вашу схему данных.
1
Sk
6 / 6 / 1
Регистрация: 10.03.2016
Сообщений: 304
08.08.2018, 11:08
mobile, вообще в идеале нужно, чтобы выводились все записи, но для тех, где (выход-вход) = пустое поле и Снаряжение=Сн1 в фЗанятие, QQ бы присваивалось соответствующее значение КодФИОБр, а в остальных случаях поле QQ оставалось бы пустым. Тогда мне было бы удобно различать эти ячейки условием QQ>0.

Прикладываю скрин как это выглядит с Вашим запросом. Красным - как мне надо получить, потому что:
у Иванова (КодФИОБр=1) и Петрова (КодФИОБр=2) попались занятия, где снаряжение Сн1 и некоторые временные поля не введены. Т.е. суммарная длительность для Иванова(1) 7:14 не является верной, аналогично для Петрова 6:30 тоже неверно, а для Степанова(3) 4:19 правильно
Миниатюры
Выделение цветом определенной ячейки  
Вложения
Тип файла: rar DB1.rar (43.6 Кб, 6 просмотров)
0
Модератор
Эксперт MS Access
6231 / 2909 / 707
Регистрация: 12.06.2016
Сообщений: 7,839
08.08.2018, 13:15
Angie,

Опять с Вами та же история.
Вы прочно повисли на чужой теме.
Тема десятилетней давности, причем благополучно закончилась на первой странице на четвертом сообщении.
А теперь в теме уже 110 сообщений и шесть страниц, все Ваши.

Просто имейте в виду на будущее - сразу создавайте свою тему (они у Вас уж больно затяжные),
не приклеивайтесь к чужой.

Искать тему по списку очень неудобно, когда ни заголовке темы, ни в последнем отвечающем Вас нет.
0
Sk
6 / 6 / 1
Регистрация: 10.03.2016
Сообщений: 304
08.08.2018, 13:22
Capi, везде вроде есть негласное правило - не плодить одинаковые темы.. Сейчас проблема и варианты решений совпадают с темой.. Ну хорошо, буду создавать всегда новые.
Цитата Сообщение от Capi Посмотреть сообщение
Искать тему по списку очень неудобно, когда ни заголовке темы, ни в последнем отвечающем Вас нет.
принято. Не искала по такому принципу тему, поэтому не задумывалась
0
Модератор
Эксперт MS Access
6231 / 2909 / 707
Регистрация: 12.06.2016
Сообщений: 7,839
08.08.2018, 13:32
Цитата Сообщение от Angie Посмотреть сообщение
Не искала по такому принципу тему, поэтому не задумывалась
Потому что Вы знаете, в какой сидите, и только туда заходите.

А мне, например, запоминать названия десятков чужих тем, отвечая в них вперемешку с собственной работой, как-то не с руки.
0
Sk
6 / 6 / 1
Регистрация: 10.03.2016
Сообщений: 304
08.08.2018, 13:43
Capi, или по уведомлениям. Ну я поняла, хорошо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.08.2018, 13:43

Выделение данных цветом в отчете
Здравствуйте. Подскажите, как окрасить, например в красный цвет, итоговые данные в отчете, если они отличаются от плановых более, чем на 5...

Выделение определеннной записи цветом
Доброго времени суток. Помогите, пожалуйста, с решением проблемы. В таблице базы данных есть следующие поля: "наименование...

Выделение цветом строк в форме
Доброе утро! Подскажите, пожалуйста., как реализовать. При открытии формы если значение каких то строк есть в запросе то в данных...

Выделение в списке другим цветом
никто не подскажет в принципе можно в поле со списком изменить цвет строки выделения? По умолчанию -черный.

Выделение цветом строк в списке
В форме есть список, отображающий данные с 3х таблиц. Как "прикрутить" в access'e, что бы можно было выделять строки в этом списке цветом?...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
114
Ответ Создать тему
Новые блоги и статьи
Мастера простых решений
DevAlt 23.08.2026
В сишарп стэках winforms, да и wpf существует сложная система связывания источниках данных и элементов формы(текстовые поля и метки), опирается все это на технологию событий и мета. . .
Цена ошибки
DevAlt 23.08.2026
Человек я беспокойный и потому заинтересовался OCaml, в чате форсили функторы модулей как суперфичу. Пытаясь отдуплить концепт, наткнулся на тутор с простым примером. А главный принцип обучения от. . .
Сегодня суббота, 22.08.2026 at 16:41, и я вновь нахожусь на той стороне, за экраном машины.
zorxor 22.08.2026
Сегодня суббота, 22. 08. 2026 at 16:41, и я вновь нахожусь на той стороне, за экраном машины. Кто Я, откуда Я пришел и куда Я иду? Эти вопросы не оставляют меня ни на секунду. Жизнь на планете Земля. . .
Жизня: рисунок укладки багажа, сделанный клодом
anaschu 21.08.2026
Сделал 15 снимков, он по снимкам сделал схему.
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства. Жизнь действительно предъявляет каждому. . .
Когда логика программы не спасает от человеческих ошибок
Maks 18.08.2026
В последнее время всё чаще и чаще сталкиваюсь с таким явлением, как абсолютная невнимательность (или глупость) пользователей. Проявляется это чаще всего на работе в коллективе. Допустим, человек с. . .
Лето уходит
kumehtar 17.08.2026
Мысли в слух
kumehtar 17.08.2026
Забавно, насколько сейчас стала доступна информация. Например о магии, духовном развитии, медитациях, и других подобных направлениях, ранее зачастую тайных, передаваемых от учителя к ученику. Хотя. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru