Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft Access |
![]() ![]() |
OkeTurel Member Откуда: Сообщений: 234 |
Здравствуйте. В VBA я формирую двумерный массив. Мне надо, чтобы пользователь этот массив мог как-то просмотреть на экране при нажатии кнопки на форме, примерно как в виде таблицы, но неужели мне придется создавать отдельную временную таблицу? По-другому никак? |
3 апр 19, 08:54 [21850881] Ответить | Цитировать Сообщить модератору |
court Member Откуда: Сообщений: 2240 |
OkeTurel, формируй свободный АДО-рекордсет Его можно задать как рекордсет формы ... или вывести в какой-нибудь АктивХ грид |
3 апр 19, 08:59 [21850886] Ответить | Цитировать Сообщить модератору |
OkeTurel Member Откуда: Сообщений: 234 |
court, спасибо, попробую задать как рекордсед формы... |
3 апр 19, 09:17 [21850915] Ответить | Цитировать Сообщить модератору |
Панург Member Откуда: настоящему индейцу завсегда везде ништяк Сообщений: 5115 |
OkeTurel, можно в список вывести. Смотря сколько записей планируется. |
3 апр 19, 09:33 [21850941] Ответить | Цитировать Сообщить модератору |
OkeTurel Member Откуда: Сообщений: 234 |
Панург, там иногда много записей и много полей, смотря какие поля пользователь выберет на форме и смотря сколько человек отметит для отображения. |
3 апр 19, 10:46 [21851021] Ответить | Цитировать Сообщить модератору |
sdku Member Откуда: Краснодар Сообщений: 7162 |
|
||
3 апр 19, 11:15 [21851052] Ответить | Цитировать Сообщить модератору |
Панург Member Откуда: настоящему индейцу завсегда везде ништяк Сообщений: 5115 |
|
||
3 апр 19, 11:39 [21851074] Ответить | Цитировать Сообщить модератору |
Панург Member Откуда: настоящему индейцу завсегда везде ништяк Сообщений: 5115 |
Какая разница что делает ТС? |
||
3 апр 19, 11:43 [21851081] Ответить | Цитировать Сообщить модератору |
Панург Member Откуда: настоящему индейцу завсегда везде ништяк Сообщений: 5115 |
соврамши...
|
||
3 апр 19, 11:46 [21851085] Ответить | Цитировать Сообщить модератору |
OkeTurel Member Откуда: Сообщений: 234 |
Есть форма с вкладками. На первой вкладке пользователь выбирает, по каким людям ему нужны данные. Может выбрать группу людей, занимающих одну должность, может выбрать одного человека. На второй вкладке пользователь выбирает, какие ему нужны данные - ИНН, сведения о паспорте, возраст, много типов сведений может выбрать. Там список с мультиселектным выбором. И потом надо бы, чтобы он просмотрел результат, потому что если какое-то возвращаемое поле пусто, то это вообще-то его вина, что оно пусто. Значит, он не ввел какой-то документ или не заполнил регистр. И ему надо это сделать, а потом повторить выбор. А потом он распечатает эти сведения или вставит в какой-нибудь другой документ. |
||
3 апр 19, 12:01 [21851115] Ответить | Цитировать Сообщить модератору |
vmag Member Откуда: MP Сообщений: 3912 |
Все это называется проблемы интерфейса... пользовтель с таким же успехом как забыл заполнить значение может и незаметить отсутствие этого значения перед тем как испортить кучу бумаги... Разумнее было бы при нажатии на кнопку печать, при наличии пустых полей, показывать только эти пустые поля, с возможностью их редактирования, а если все нормально - то просто печатать документ без предпросмотра (это сэкономит кучу времени - не нужно проверять то, что не нужно проверять) |
||
3 апр 19, 16:04 [21851450] Ответить | Цитировать Сообщить модератору |
sdku Member Откуда: Краснодар Сообщений: 7162 |
сделать поля обязательными,а при отсутствии данных писать "-" (прочерк) |
3 апр 19, 17:22 [21851534] Ответить | Цитировать Сообщить модератору |
OkeTurel Member Откуда: Сообщений: 234 |
Спасибо за советы. Сделала, короче, сразу вывод в Excel, в том числе пустые строки. Пусть пользователь дальше сам парится. |
8 апр 19, 09:29 [21855455] Ответить | Цитировать Сообщить модератору |
Joss Member Откуда: г. Минск Сообщений: 5128 |
Иногда до 50% времени уходит на обеспечение удобства пользователя. Контроль на заполнение нужных полей, контроль на правильность заполнения, формирование нужных сообщений, переход к проблемным полям, правильный порядок перехода по Enter и т.д. |
||
8 апр 19, 10:50 [21855577] Ответить | Цитировать Сообщить модератору |
OkeTurel Member Откуда: Сообщений: 234 |
Ну вот, опять все переделывать. |
9 апр 19, 10:10 [21856778] Ответить | Цитировать Сообщить модератору |
Кривцов Анатолий Member Откуда: Сообщений: 603 |
OkeTurel, а откуда вы берете данные для заполнения массива? И почему именно массив? А вообще, форма с листбоксами и табличная субформа, использующая "свободный АДО-рекордсет" решит вашу проблему. После изменения 1-го списка рекордсет перезаполняется, а после изменения 2-го списка меняется видимость колонок. |
9 апр 19, 10:55 [21856843] Ответить | Цитировать Сообщить модератору |
OkeTurel Member Откуда: Сообщений: 234 |
Кривцов Анатолий, ну, если по порядку, то в форме пользователь выбирает в списке те виды информации, которые он хочет узнать о человеке или группе людей. В списке мультивыбор. Например, он выбрал "ФИО", "ИНН", "Адрес регистрации" для 3-х человек. Дальше запускается кусок кода, перебирающий его выбор. Каждое выбранное значение передается функции variable_value, которая это значение вычисляет для конкретного человека. Там 2 цикла, внешний перебирает людей, внутренний перебирает тип информации. For Each i In Me.list_information.ItemsSelected c = c + 1 Do r = r + 1 o_sheet.Cells(r, c).Value = variable_value(Me.list_information.ItemData(i), o_source("person_id").Value) o_source.MoveNext Loop While Not o_source.EOF o_source.MoveFirst r = 2 Next i Я потом это запихиваю сразу в Эксель, но, видимо, придется сделать по-другому. |
9 апр 19, 13:39 [21857099] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft Access | ![]() |