|
Сортировка внутри поля со списком
|
|||
---|---|---|---|
#18+
Доброе утро! Есть на форме поле со списком, в нем стандартный макрос, который при клике по значению в поле выкидывает всю запись в форму. Вопрос: Как бы сделать так, чтобы внутри этого выкидываемого списка записи выстраивались по алфавитному порядку, а не отражали порядок, записанный в таблице? Не кидайтесь камнями (или чем похуже) - нуб 2-3 уровня) ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2016, 10:46 |
|
Сортировка внутри поля со списком
|
|||
---|---|---|---|
#18+
BelkafonStrelka, Без примера трудненько понять задумку, но возможно такие процедуры чем помогут Сортировка По возрастанию DoCmd.RunCommand acCmdSortAscending По убыванию DoCmd.RunCommand acCmdSortDescending Если же у вас и на самом деле - МАКРОС, то там тоже кажись были такие команды. и тем более, в поле со списком, в источнике строк можно задать сортировку, или у вас нельзя? Это при условии, что всё правильно допонял. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2016, 11:43 |
|
Сортировка внутри поля со списком
|
|||
---|---|---|---|
#18+
Лапух, приложил пример БД. Как видно в примере: список выкидной содержит перечень записей в таблице, показывая при этом одно поле (Фамилия). Идея в том, что оператор БД заносит любые данные в любом порядке - но для простоты ориентирования, список должен имеющиеся записи выстраивать по алфавиту. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2016, 13:24 |
|
Сортировка внутри поля со списком
|
|||
---|---|---|---|
#18+
Лапух, и сразу вопрос: при открытии формы, в ней сразу появляются последние добавленные данные. Если оператор неграмотный - вместо нажатия "внести запись", он может начать редактировать уже имеющиеся данные - таким образом, целая запись после нажатия кнопки "внести запись" поменяется, т.е. пропадет. Как сделать: открывая форму, оператор видит перед собой чистую форму? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2016, 13:28 |
|
Сортировка внутри поля со списком
|
|||
---|---|---|---|
#18+
BelkafonStrelka, 1.стесняюсь спросить-а что мешает отсортировать источник Combo ? 2.а зачем "выкидывать всю запись в форму" ? (достаточно кода главной таблицы) ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2016, 13:39 |
|
Сортировка внутри поля со списком
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2016, 13:52 |
|
Сортировка внутри поля со списком
|
|||
---|---|---|---|
#18+
BelkafonStrelkaКак сделать: открывая форму, оператор видит перед собой чистую форму? Самая чистая форма - отвязанная форма, вот вам ТЗ: - форма не привязана к данным (есть все поля для ввода, но они свободные) - в форме есть список с уже введенными данными (в списке отображается только несколько столбцов для идентификации и поиска, остальные скрыты). - если выбрать в списке значение, то из скрытых столбцов в поля формы вставляются все значения, после этого можно изменить данные в полях и нажать кнопку "Изменить" - режим корректировки. - если в пустые поля формы ввести данные и нажать кнопку "Добавить" - будет добавлена новая запись и она станет выбранной в списке. - если выбрать запись в списке и нажать кнопку "Удалить" - запись будет удалена. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2016, 19:24 |
|
Сортировка внутри поля со списком
|
|||
---|---|---|---|
#18+
vmag, спасибо за ТЗ, теперь вопросы от нуба, 2 серия =) Стандартными макросами сколько не читал справку мелкософта, не нашел. Полагаю, нужен скрипт VBA, что-то в духе "select from "bla bla bla" add....". На примере (прикрепил) можно демонстрацию, как забирать данные из свободных полей и вносить в таблицу / выбирать данные из скрытых полей при выборе записи в списке и выкидывать их в свободные поля? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2016, 10:13 |
|
Сортировка внутри поля со списком
|
|||
---|---|---|---|
#18+
BelkafonStrelka, Если правильно понял вопрос, то я бы сделал ЭТО процедурами обработки событий так: Private Sub ДОБАВИТЬ_Click() Me.[код_открытый] = Me.[Код] Me.[фио_открытый] = Me.[фио] Me.[дата_открытый] = Me.[дата] End Sub Private Sub СПИСОК_AfterUpdate() Me.[код_открытый] = Me.[СПИСОК].Column(0) Me.[фио_открытый] = Me.[СПИСОК].Column(1) Me.[дата_открытый] = Me.[СПИСОК].Column(2) End Sub Примечание: - на всякий случай, если вдруг не в курсе. у - Column - (0) указывает что это 1-е поле в запросе, (1) - второе и. т. п. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2016, 12:45 |
|
Сортировка внутри поля со списком
|
|||
---|---|---|---|
#18+
Лапух, правильно ли я понял, что в коде ошибка закралась: нужно наоборот, спрятанным значениям присваивать по клику на кнопку значения из свободных полей? Как дальше на VBA звучит команда "добавить запись из скрытых полей в таблицу"? т.е. я бы с учетом новых знаний сделал: Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9.
... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2016, 12:57 |
|
Сортировка внутри поля со списком
|
|||
---|---|---|---|
#18+
BelkafonStrelka, На сколько я понял, то вам нужно из Якобы скрытых полей добавить в свободные. Если наоборот, то код вы изнасильно-принудительно не присвоите, т. к. это счетчик и он сам присваивается +1 к последнему значению счетчика. Нужно перейти на новую запись и - ИЗ полей - фио_открытый и дата_открытый вставлять вначения - В фио и дата тогда так Private Sub ДОБАВИТЬ_Click() DoCmd.RunCommand acCmdRecordsGoToNew Me.[фио] = Me.[фио_открытый] Me.[дата] = Me.[дата_открытый] End Sub Соответственно при обратной постановке вопроса не понятно, что вы хотите вытворять с полем со списком - СПИСОК, т. к. он берет значения из таблицы из уже внесенных в нее значений записей. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2016, 13:15 |
|
|
start [/forum/topic.php?fid=45&gotonew=1&tid=1612920]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
31ms |
get topic data: |
8ms |
get first new msg: |
6ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
others: | 362ms |
total: | 493ms |
0 / 0 |