powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Форма в эксель отображающая и обновляющая данные
15 сообщений из 15, страница 1 из 1
Форма в эксель отображающая и обновляющая данные
    #36170379
Tmoon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте,

имеются данные по займам:
1. заемщик
2. займодавец
3. номер договора
4. дата получения
5. дата гашения
6. %
7. целевой характер (текст)
8. доп соглашения (номера, дата, условия)
9. пояснения (текст)

необходимо, чтобы при выборе, например, 1 условия в выпадающем меню, отсортировывались данные по нему, а в условии 2, отразились данные с учетом условия 1, и затем в условии 3. Т.е., чтобы при выборе названия предприятия заемщика, например, ХХХ, во 2 выпадающем окне появился список: Сбербанк, ООО УУУ, ИН Иванов, при выборе, ООО УУУ, в 3 элементе появился номер договра, 12, 25 ,36/9.
А при выборе данных в условии 3 автоматически заполнялись данные 4, 5, 6, 7,8,9. При этом сохранялась возможнеость редактирования данных. например, изменить пояснение или целевой характер.

Как сделать выпадающие списки на примере область - город - улица, я нашла, но не получается сделать так, чтобы при выборе нескольких условий автоматически подставлялись данные именно по этому договору, а изменения сохранялись.
И как сделать чтобы можно было из формы создать данные по новому договору.
...
Рейтинг: 0 / 0
Форма в эксель отображающая и обновляющая данные
    #36170805
Volodshan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Tmoon, вызовите форму, предварительно выделив ваши данные с шапкой. Поиск по любому полю, если новое - новая строка.
...
Рейтинг: 0 / 0
Форма в эксель отображающая и обновляющая данные
    #36171481
Tmoon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Volodshan, как раз такая сортировка и сделана на другом листе Эксель, но по мнению начальства это не очень эстетично смотрится :(
...
Рейтинг: 0 / 0
Форма в эксель отображающая и обновляющая данные
    #36171794
Фотография bbx1389
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Tmoon,

Можете сделать набор combobox-ов и связать их с критерием автофильтра.

Соответственно каждый combobox заполнять данными видимых строк соответствующего столбца таблицы с автофильтром...
...
Рейтинг: 0 / 0
Форма в эксель отображающая и обновляющая данные
    #36171816
Deggasad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не пойму в чем вопрос?
Если вы хотите форму сделать - так делайте.
Если что-то не получается выкладывайте пример и будем смотреть - что неполучается?

Если вопрос как выбрать значения по нескольким условиям, то можно по разному:
- формулами, примеров на сайте много
- расширенный фильтр
- сводная таблица
- запрос
- ну и на худой конец перебор значений

В любом случае нужно смотреть пример, из которого будет ясно что вы хотите сделать.
...
Рейтинг: 0 / 0
Форма в эксель отображающая и обновляющая данные
    #36172842
Tmoon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Данные заполняются в строчку. Как пример, указана часть данных. На самом деле их более 50, что вызывает неудобства при их чтении. А если вставить форму, то удобнее смотреть. Выпадающий список по заемщику, займодавщу и номеру договора добавлен. Но вот как связать Textbox и Option Button с нужными строчками, чтобы туда данные подставлялись автоматически. И в то же время можно было изменить прямо из формы.
...
Рейтинг: 0 / 0
Форма в эксель отображающая и обновляющая данные
    #36174987
Tmoon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
bbx1389, если так делать, то когда надо изменить, например, дату или добавить новые данные о гашении, то создается еще строчка с имененными только что данными. Таким образом, в таблице один и тот же кредит отражается 2 раза. А этого не должно быть.
...
Рейтинг: 0 / 0
Форма в эксель отображающая и обновляющая данные
    #36175121
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Tmoon, раза три прочитал ветку, ничерта не понял, вы уж извините, с постановкой ТЗ не всё гладко...
что надо чтобы было автоматически:
надо по критериям отображать/скрывать часть из огромной таблицы?
или
вы хотите, выбрав клиента из списка, просматривать по нему данные?

А как заносить новые данные? руками
или
программно через форму (если 2, то это обязательно?)

Объем данных
Сколько строк вниз (столбиков, как я понял, около 50?)
...
Рейтинг: 0 / 0
Форма в эксель отображающая и обновляющая данные
    #36175123
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Tmoonbbx1389, если так делать, то когда надо изменить, например, дату или добавить новые данные о гашении, то создается еще строчка с имененными только что данными. Таким образом, в таблице один и тот же кредит отражается 2 раза. А этого не должно быть.
Дело в том, что вы кредитный портфель в excel формируете А этого не должно быть
...
Рейтинг: 0 / 0
Форма в эксель отображающая и обновляющая данные
    #36175125
Фотография bbx1389
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Tmoon,

Не очень понимаю...

Данные должны измениться в уже существующей строке?
Или проблемно, заполнить combobox "уникальными" значениями?
...
Рейтинг: 0 / 0
Форма в эксель отображающая и обновляющая данные
    #36176049
Tmoon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PlanB,
цель формы, чтобы при выборе номера договора отображались все данные по нему, и при их изменениии их можно было бы изменить.

Через форму заносить данные было бы удобнее (сразу нашел договор и отразил изменения). Но это не основная цель, т.к. занести можно и на лист эксель (как сейчас и делаю). Основная проблема, что тогда данные отображаются не "очень читаемо" для руководства. А делать каждый договор на отдельном листе не удобно для меня, т.к. добавлять на основе этого листа (где все данные), через ссылки на другие я формирую различные отчеты и провожу анализ динамики и т.п.

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

Я не прошу сделать мне форму, мне бы 1 пример как привязать, по аналогии я сама доделаю.

Строк вниз n-ное количество (более 100), поскольку идет постоянное движение (добавление, обновление)
...
Рейтинг: 0 / 0
Форма в эксель отображающая и обновляющая данные
    #36176063
Tmoon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
bbx1389, если все даннные отображать через списки, то, чтобы посмотреть даннные по договору, надо выбрать уникальные записи по всем спискам на форме. А какое же это удобство?!
Цель: выбрать номер договора, а все данные по нему должны сами подставиться. Но при этом чтобы сохранялась возможность изменить их из этой формы или из другой. если на одной нельзя совместить 2е эти функции (отображение и обновление/занесение данных)
...
Рейтинг: 0 / 0
Форма в эксель отображающая и обновляющая данные
    #36176327
Deggasad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TmoonДанные заполняются в строчку. Как пример, указана часть данных. На самом деле их более 50, что вызывает неудобства при их чтении. А если вставить форму, то удобнее смотреть. Выпадающий список по заемщику, займодавщу и номеру договора добавлен. Но вот как связать Textbox и Option Button с нужными строчками, чтобы туда данные подставлялись автоматически. И в то же время можно было изменить прямо из формы.

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

Собственно пример, который вы просили (для суммы договора и целевой/нецелевой)
В обработчике Комбобокса с № договора пишем
Код: plaintext
1.
2.
3.
4.
Private Sub ComboBox3_Click()
  n = Evaluate("MATCH(""" & ComboBox1 & ComboBox2 & ComboBox3 & """,INDEX(БД,,1)&INDEX(БД,,2)&INDEX(БД,,3),0)") + [БД].Row -  1 
  TextBox19.Value = [БД].Cells(n,  7 )
  OptionButton1 = [БД].Cells(n,  9 ) = "да"
 End Sub
В обработчике Текстбокса с суммой договора пишем
Код: plaintext
1.
2.
3.
Private Sub TextBox19_Change()
  n = Evaluate("MATCH(""" & ComboBox1 & ComboBox2 & ComboBox3 & """,INDEX(БД,,1)&INDEX(БД,,2)&INDEX(БД,,3),0)") + [БД].Row -  1 
  [БД].Cells(n,  7 ) = TextBox19.Value
End Sub

Менять OptionButton1 не получится, чтобы менять из формы параметр целевой не целевой нужно использовать не OptionButton1, а CheckBox

Чтобы использовать вышеуказанную конструкцию поиска нужной строки
Evaluate("MATCH(""" & ComboBox1 & ComboBox2 & ComboBox3 & """,INDEX(БД,,1)&INDEX(БД,,2)&INDEX(БД,,3),0)") + [БД].Row - 1
предварительно нужно задать именованный диапазон в Экселе в который войдет ваша база с данными. Его можно создать в меню вставка - имя - присвоить. Он задается жестко, либо плавающий (саморасширяющийся - примеры поищите и посмотрите на форуме)
Конструкция может быть гораздо короче
Evaluate("MATCH(""" ComboBox3 & """,INDEX(БД,,3),0)") + [БД].Row - 1
Если номер договора - значение уникальное
...
Рейтинг: 0 / 0
Форма в эксель отображающая и обновляющая данные
    #36176334
Deggasad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Остался от старого кода лишний кусок. Исправляюсь

Собственно пример, который вы просили (для суммы договора и целевой/нецелевой)
В обработчике Комбобокса с № договора пишем
Код: plaintext
1.
2.
3.
4.
Private Sub ComboBox3_Click()
  n = Evaluate("MATCH(""" & ComboBox1 & ComboBox2 & ComboBox3 & """,INDEX(БД,,1)&INDEX(БД,,2)&INDEX(БД,,3),0)") 
  TextBox19.Value = [БД].Cells(n,  7 )
  OptionButton1 = [БД].Cells(n,  9 ) = "да"
 End Sub
В обработчике Текстбокса с суммой договора пишем
Код: plaintext
1.
2.
3.
Private Sub TextBox19_Change()
  n = Evaluate("MATCH(""" & ComboBox1 & ComboBox2 & ComboBox3 & """,INDEX(БД,,1)&INDEX(БД,,2)&INDEX(БД,,3),0)")
  [БД].Cells(n,  7 ) = TextBox19.Value
End Sub

Менять OptionButton1 не получится, чтобы менять из формы параметр целевой не целевой нужно использовать не OptionButton1, а CheckBox

Чтобы использовать вышеуказанную конструкцию поиска нужной строки
Evaluate("MATCH(""" & ComboBox1 & ComboBox2 & ComboBox3 & """,INDEX(БД,,1)&INDEX(БД,,2)&INDEX(БД,,3),0)") + [БД].Row - 1
предварительно нужно задать именованный диапазон БД в Экселе в который войдет ваша база с данными. Его можно создать в меню вставка - имя - присвоить. Он задается жестко, либо плавающий (саморасширяющийся - примеры поищите и посмотрите на форуме)
Конструкция может быть гораздо короче
Evaluate("MATCH(""" ComboBox3 & """,INDEX(БД,,3),0)") + [БД].Row - 1
Если номер договора - значение уникальное[/quot]
...
Рейтинг: 0 / 0
Форма в эксель отображающая и обновляющая данные
    #36176342
Deggasad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Опять лишнее осталось

DeggasadОстался от старого кода лишний кусок. Исправляюсь

Собственно пример, который вы просили (для суммы договора и целевой/нецелевой)
В обработчике Комбобокса с № договора пишем
Код: plaintext
1.
2.
3.
4.
Private Sub ComboBox3_Click()
  n = Evaluate("MATCH(""" & ComboBox1 & ComboBox2 & ComboBox3 & """,INDEX(БД,,1)&INDEX(БД,,2)&INDEX(БД,,3),0)") 
  TextBox19.Value = [БД].Cells(n,  7 )
  OptionButton1 = [БД].Cells(n,  9 ) = "да"
 End Sub
В обработчике Текстбокса с суммой договора пишем
Код: plaintext
1.
2.
3.
Private Sub TextBox19_Change()
  n = Evaluate("MATCH(""" & ComboBox1 & ComboBox2 & ComboBox3 & """,INDEX(БД,,1)&INDEX(БД,,2)&INDEX(БД,,3),0)")
  [БД].Cells(n,  7 ) = TextBox19.Value
End Sub

Менять OptionButton1 не получится, чтобы менять из формы параметр целевой не целевой нужно использовать не OptionButton1, а CheckBox

Чтобы использовать вышеуказанную конструкцию поиска нужной строки
Evaluate("MATCH(""" & ComboBox1 & ComboBox2 & ComboBox3 & """,INDEX(БД,,1)&INDEX(БД,,2)&INDEX(БД,,3),0)") + [БД].Row - 1
предварительно нужно задать именованный диапазон БД в Экселе в который войдет ваша база с данными. Его можно создать в меню вставка - имя - присвоить. Он задается жестко, либо плавающий (саморасширяющийся - примеры поищите и посмотрите на форуме)
Конструкция может быть гораздо короче
Evaluate("MATCH(""" ComboBox3 & """,INDEX(БД,,3),0)") + [БД].Row - 1
Если номер договора - значение уникальное[/quot]
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Форма в эксель отображающая и обновляющая данные
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]