Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Microsoft Access

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34

Открыть новую тему     Написать ответ в эту тему

Wizzz_art



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

HELP | Обсуждение | FAQ

 
| В варезнике ищите по полному наименованию: Microsoft Office 2003-2016 |

 
Реляционная система управления базами данных (СУБД) корпорации Microsoft. Входит в состав пакета Microsoft Office. Имеет широкий спектр функций, включая связанные запросы, связь с внешними таблицами и базами данных. Благодаря встроенному языку VBA, в самом Access можно писать приложения, работающие с базами данных.
 

Смежные темы:
Программы » Microsoft Office 2019 & 365 | 2016 | 2013 | 2010 | 2007 | 2003
Программы » OneNote | Outlook 2013 & 2016 & 2019 | Outlook 2010 | Microsoft Mathematics & Math Solver
Программы » Word FAQ | Excel FAQ
Прикладное программирование » Word VBA | Excel VBA | Access VBA  
Андеграунд » Microsoft Office 2019 | 2016 | 2013 | 2010 | 2007 | 2003
Андеграунд » OneNote | Visio | SharePoint Server | Project Server | Exchange Server
Андеграунд » Надстройки (add-ins) и коммерческие макросы Excel
Андеграунд » Самостоятельная сборка дистрибутивов Оffice 2007/2010/2013/2016 | MUI для Office 2007

Всего записей: 310 | Зарегистр. 28-04-2002 | Отправлено: 19:06 12-09-2002 | Исправлено: AlexDAT, 03:36 03-09-2020
msmih



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
grbdv
Попробую логику пояснить:
Выбираем все повторяющиеся значения из первого столбца. В каждом блоке повторов ищем в столбце два выражение равное "N". Если находим такие совпадения, то в строке со значением "N" пишем в третьем столбце "Оригинальное значение"
Как это может выглядеть?

Всего записей: 1192 | Зарегистр. 29-01-2006 | Отправлено: 12:38 20-08-2012
grbdv

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
msmih
У меня щаз нет Акса под руками. Поэтому по памяти:
1. SELECT DISTINCT [Field1] FROM [Table]; выбираем уникальные записи по Полю 1
2. Создаем рекордсет на базе этого запроса
3. По каждой записи (каждому значению Поля 1) строим новый запрос SELECT [...] FROM [Table] WHERE [Field1] = Value AND [Field2] = N  
4. На этом SQL строим рекордсет.  
5. Если в нем есть записи - пробегаемся по ним и редактируем.
 
Как-то так... Спецы, ужаленные SQL, модет и водин запрос все это впихнули бы. Но я только учусь :) Да и нагляднее так...

Всего записей: 1163 | Зарегистр. 20-08-2011 | Отправлено: 13:08 20-08-2012
msmih



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
grbdv
 
спасибо, но это сложная конструкция. может есть у кого еще мысли?

Всего записей: 1192 | Зарегистр. 29-01-2006 | Отправлено: 14:02 20-08-2012
grbdv

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
msmih
Цитата:
спасибо, но это сложная конструкция

Не за что.  
Поясни, плз, "сложная". С чем сравниваешь? Просто только кошки родятся.

Всего записей: 1163 | Зарегистр. 20-08-2011 | Отправлено: 14:12 20-08-2012
A1exSun



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ребят, подскажите. В версии 2003 был мастер таблиц, на сайте MS прочитал:

Цитата:
Модели вместо мастера таблиц   . В Access 2003 для быстрого создания таблиц использовался мастер таблиц. В Access 2007 мастер таблиц был заменен шаблонами таблиц и полей. В Access 2010 шаблоны таблиц и полей заменены моделями.

Где эти модели в Access 2010?

Всего записей: 1871 | Зарегистр. 25-11-2009 | Отправлено: 18:22 15-09-2012
7yang7

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Здравствуйте, проблема заключается в следующем. Имеется созданная база в Access 2007 на Windows 7. И там размер и стиль шрифта на кнопках и в различных отчетах отображается нормально, но при открытие на других компьютерах этой базы шрифт увеличивается и не влезает в размер кнопки или поля. Например на кнопке написано Закрыть, а при открытие на другом компьютере на этой же кнопке шрифты выглядит по другому и там написано уже Закры. И такой сбой не обязательно может происходить на каждом компьютере, а как то выборочно что ли. Подскажите пожалуйста как можно решить эту проблему.

Всего записей: 10 | Зарегистр. 02-08-2012 | Отправлено: 08:11 18-09-2012
Mikky72

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Объясните, пожалуйста, как сделать такую логику заполнения базы (на примере персонала).
Допустим надо внести информацию по сотруднику в некую сводную таблицу "Персонал" - Фамилия, отдел, должность.
Фамилия вводится с клавиатуры (тут и ежу понятно как)
Отдел берется из списка отделов (например, мастер подстановок хорошо справится).
загвоздка вот в чем - как организовать, чтобы при заполнении поля "должность" выпадал список только по должностям в ранее выбранном отделе, а не полный список должностей в компании... Я так понимаю, надо как-то связать часть записей из таблицы "Полный список должностей" с нужной записью в таблице "Список отделов"  и потом ещё как-то всё это увязать с общей таблицей...
Помогите, пожалуйста!
Заранее благодарен.

Всего записей: 240 | Зарегистр. 15-07-2007 | Отправлено: 19:46 25-10-2012
LorIps

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mikky72
Делается таблица Отделы. Делается таблица Должности. Делается связующая таблица Отдел-Должность, состоящая только из индексов Отделов и Должностей.
 
Выбрав Отдел, по его индексу выбираем из связующей таблицы соответствующие  индескы должностей, по ним - их наименования. Можно и наоборот.

Всего записей: 42 | Зарегистр. 09-10-2012 | Отправлено: 20:24 25-10-2012
Mikky72

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
LorIps
Спасибо за ответ.
Можно чуть поподробнее?
Создал таблицу Отделы (1-конструкторский, 2-технологический), создал таблицу Должности (1-начальник, 2-конструктор, 3-технолог).
Создал таблицу Отдел-Должность и заполнил её путем подстановки кодов из таблиц Отделы и Должности (4 строчки:  1 1, 1 2, 2 1, 2 3).
А теперь нужна таблица Персонал (фамилия, отдел, должность) - как её создавать и заполнять?

Всего записей: 240 | Зарегистр. 15-07-2007 | Отправлено: 21:41 25-10-2012 | Исправлено: Mikky72, 21:42 25-10-2012
LorIps

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mikky72

Цитата:
Создал таблицу Отдел-Должность и заполнил её путем подстановки кодов из таблиц Отделы и Должности (4 строчки:  1 1, 1 2, 2 1, 2 3).  

Йез. 4 строчки, два поля.
 

Цитата:
А теперь нужна таблица Персонал (фамилия, отдел, должность) - как её создавать и заполнять?  

Так и будет список полей:
User_ID - счетчик
фамилия - string
отдел - long
должность - long
 
В поля отдел и в должность будут заноситься не наименования, а их идентификаторы из справочников. Таблицы первого уровня - справочники. Их два - Отдел и Должность.
 
Вообще-то, это самые азы. Называется нормализация БД, что ли.
Все это есть в учебных базах Борей и Северный Ветер. Рекомендую посмотреть.

Всего записей: 42 | Зарегистр. 09-10-2012 | Отправлено: 22:08 25-10-2012
Mikky72

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
LorIps
Так я вроде и так делаю.
Я через мастер подстановок подставляю в таблицу Персонал в поле отдел идентификатор отдела из таблицы Отдел, а в поле Должность её идентификатор, но - если брать идентификатор из таблицы Должность - выпадают все три варианта (1 2 3), а если из таблицы отдел-должность, то вообще выпадает четыре (1 2 1 3). А надо, чтобы выпадало только два варианта (1 и 2 или 1 и 3, в зависимости от отдела). Т.е. в выпадающем списке при заполнении таблицы не должно быть вариантов, противоречащих таблице Отделы-Должности.
Можете описать всю процедуру по шагам? В самоучителях по Аксесу как-то не нашел этого момента.

Всего записей: 240 | Зарегистр. 15-07-2007 | Отправлено: 22:34 25-10-2012 | Исправлено: Mikky72, 23:05 25-10-2012
LorIps

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mikky72
Цитата:
Я через мастер подстановок...  

Я про эти мастера мало что знаю. Да и зачем это в таблице? Все равно в форму надо будет выводить... Там среди опций, что будет источником поля надо указать запрос.
 
По идее, источником данных для поля Должность должен быть запрос к связующей таблице, котоорым будут выбраны все ид должностей выбранного отдела (все должности если отдел не выбран) и, наоборот, для поля Отдел - запрос к той же связующей, которым выбираются все ид отделов, содержащих эту должность.

Всего записей: 42 | Зарегистр. 09-10-2012 | Отправлено: 23:06 25-10-2012
Mikky72

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

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

Ага, уже теплее. Только как в этот запрос условие загонять, чтобы автоматически срабатывало в момент заполнения формы?  
Можете мне сделать такую "базу" из нескольких сотрудников? (для спеца - это несколько минут). Я бы поковырял, может и сообразил бы. А то Борей в шок повергает.

Всего записей: 240 | Зарегистр. 15-07-2007 | Отправлено: 23:59 25-10-2012 | Исправлено: Mikky72, 00:07 26-10-2012
vikkiv



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mikky72
Тут не чисто Access а скорее SQL + VBA, в форме делаешь VBA-refresh с первого ComboBox на второй типа
----
Private Sub FirstCombo_Combo_AfterUpdate()
Me.Second_Combo.Requery
End Sub
----
A во втором в список опций добавляешь SQL условие по первому ComboBox типа ...
---
SELECT ... Where XX_ID=[Forms]![Your_Form_Name]![Your_First_Combo_Name]
---
Образец например такой DepComboBoxForm-RuBoard.accdb (0.6 MB)

Всего записей: 747 | Зарегистр. 10-11-2005 | Отправлено: 08:35 30-10-2012 | Исправлено: vikkiv, 08:36 30-10-2012
Elder

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Извиняюсь за тупость, но не могу разобратся: форма с полем ввода и подчиненной формой основанной на запросе к таблице + макрос обновления подчиненной формы. Вопрос: почему если я рисую кнопку и назначаю ей этот макрос все замечательно работает, а если назначаю макрос на изменение поля формы - нет. хотелось бы видеть результат сразу при вводе, а не после нажатия на кнопку

Всего записей: 41 | Зарегистр. 26-03-2006 | Отправлено: 03:47 03-12-2012 | Исправлено: Elder, 03:48 03-12-2012
Elder

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Поражает активность данного топика
 
Как всетаки сделать
чтобы при вводе в поле значения, по мере ввода выполнялся SQL запрос и результат сразу выводился в таблицу в этой же форме, и возможно ли такое или для обновления результата обязательно обновлять всю форму с потерей фокуса в поле ввода
 
Боюсь говорить спасибо заранее

Всего записей: 41 | Зарегистр. 26-03-2006 | Отправлено: 13:50 19-03-2013
aidomars



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
а если назначаю макрос на изменение поля формы

AfterUpdate пробовали?

Всего записей: 982 | Зарегистр. 23-04-2007 | Отправлено: 15:11 19-03-2013
Elder

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
aidomars
пробовал через DoCmd.Requery, к сожалению с VBA слабо знаком, чтото нетак делаю
 
После подключения AfterUpdate и кнопка перестала работать

Всего записей: 41 | Зарегистр. 26-03-2006 | Отправлено: 10:54 20-03-2013 | Исправлено: Elder, 10:58 20-03-2013
aidomars



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Elder
Свойства поля, вкладка "События", на выбранном событии нажать кнопку справа, откроется "Построитель", там можно выбрать макрос или Программы, т.е. VBA. Ну и там уже писать запрос или еще что.

Всего записей: 982 | Зарегистр. 23-04-2007 | Отправлено: 11:48 20-03-2013
Elder

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
так и делал, выбирал программа и прописывал DoCmd.Requery, не работает
 
попытаюсь описать проблемму попроще:
есть таблица1, запрос1, форма1 и форма2
форма2 содержит результаты запроса1
форма1 содержит поле ввода поле1 и подчиненную форму форма2
 
необходимо чтобы результат выполнения запроса выводился сразу при вводе, например: нажал букву Н - результат обновился, В (НВ) - опять обновился, без потери фокуса полем1, т.е. результат динамично изменялся по мере ввода
 
во намудрил, а хотел попроще

Всего записей: 41 | Зарегистр. 26-03-2006 | Отправлено: 12:10 20-03-2013 | Исправлено: Elder, 12:38 20-03-2013
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34

Компьютерный форум Ru.Board » Компьютеры » Программы » Microsoft Access


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru