С Новым годом! Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.97/107: Рейтинг темы: голосов - 107, средняя оценка - 4.97
124 / 3 / 0
Регистрация: 29.07.2013
Сообщений: 249

Форма для ввода, поиска и редактирования таблицы excel

01.08.2013, 12:06. Показов 21633. Ответов 48
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем хорошего настроения!

Есть таблица, сделал форму для ввода данных. Необходимо чтобы при вводе данных в TextBox1 происходил поиск из первого столбца и после соответствия выводил в Textbox2 и TextBox3 значения этой строки соответственно из столбца 2 и 3, но не просто, а для редактирования. При нажатии кнопки Cange Record данные в искомой строке должны измениться.
Форма сейчас работает только на ввод, помогите с кодом поиска и редактирования.
Вложения
Тип файла: rar Data Table With Input Userform.rar (20.6 Кб, 312 просмотров)
1
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
01.08.2013, 12:06
Ответы с готовыми решениями:

Открытая для редактирования форма в Excel
Можно ли в Excel создать форму так, чтобы она была открыта и пользователь имел бы доступ к редактированию листа???

Форма ввода в ввиде Таблицы Excel или Word
Стоит задача организовать форму ввода и редактирования базы данных в виде документа Word или таблицы Excel. Такая необходимость возникла...

Вот есть форма календаря для ввода дат, а для ввода времени?
Не ткнете, где взять можно??? Или может кодом кто поделится? Нужно часы и минуты выбирать из формы..... Как сделать - не согу...

48
124 / 3 / 0
Регистрация: 29.07.2013
Сообщений: 249
02.08.2013, 10:57  [ТС]
Предложили неплохой вариант по поиску.

http://www.planetaexcel.ru/?PA... sage416815

Теперь надо чтобы редактированные данные попали на свое место.

Добавлено через 20 часов 36 минут
Нет никаких идей?
0
 Аватар для KoGG
5637 / 1619 / 418
Регистрация: 23.12.2010
Сообщений: 2,428
Записей в блоге: 1
02.08.2013, 15:45
Тут идеи не нужны. Тут нужно воплощение идей.
Вложения
Тип файла: zip Data Table With Input Userform.zip (24.2 Кб, 1098 просмотров)
3
124 / 3 / 0
Регистрация: 29.07.2013
Сообщений: 249
02.08.2013, 20:49  [ТС]
KoGG, я оценил вложенный Вами труд детального понимания вопроса и подхода к его решению. Оч круто!!
0
6997 / 2895 / 555
Регистрация: 19.10.2012
Сообщений: 8,803
02.08.2013, 23:12
Как-то мне не нравится, что можно добавить уже существующий номер ещё раз. Но уже нельзя его изменить (т.к. выше есть такой же).
Т.е. нельзя изменить эту строку - номера вообще нельзя изменить (или можно изменить только на другой существующий - не вникал).
0
 Аватар для KoGG
5637 / 1619 / 418
Регистрация: 23.12.2010
Сообщений: 2,428
Записей в блоге: 1
03.08.2013, 17:57
To Hugo121 (полезно и ac1-caesar),
для решения проблемы задваивания записей с одним "Task Number" в конец процедуры formField1_Change добавить еще одну строку:
Visual Basic
1
Me.cmdbtnSave.Enabled = Not FindedFlag
2
124 / 3 / 0
Регистрация: 29.07.2013
Сообщений: 249
03.08.2013, 23:08  [ТС]
Понял, отработаю и эту часть вопроса. Просто в моем случае процессы работают отдельно: - добавление новой записи и редактирование старой не пересекаются.
0
0 / 0 / 0
Регистрация: 24.03.2015
Сообщений: 1
24.03.2015, 10:55
Прошу помощи!!!!!!!
Имеется табличка и форма для ввода информации в данную таблицу (признаюсь сразу это вообще мой первый опыт с VBA). Необходимо что бы информацию можно было редактировать (из формы) и сохранять в том же месте, но с новыми редакциями. Для этого я вставил ComboBox -"поиск" инфа отображается, но при редактировании сохраняется только в столбце "А" и в новой строке. Получается дублирование что определенно не подходит. Перепробовал несколько вариантов из аналогичных работ по поиску, но ....... Помогите дописать код или хотя бы подскажите где можно взять.
Заранее благодарен!!!!
Вложения
Тип файла: rar Карточка лесного пожара (Новая форма).rar (40.5 Кб, 141 просмотров)
0
 Аватар для mostApi
8 / 6 / 0
Регистрация: 15.05.2015
Сообщений: 350
19.10.2015, 13:36
Сделал табель учета рабочего времени в Excel, все считается отлично, но т.к. имеем дело с вводом времени в формате "НН:ММ" - неудобно, попросили создать форму...
В форме столкнулся с отсутствием как нужных знаний так и навыков в работе с VBA..., нужна помощь...

- При выборе Работника и Дня - не обновляется значения в соответствующих ComBox-ах, хотя при введении новых данных, все меняем без проблем - как реализовать?
Меняем значение ComBox-ов, меняются и отображаются значения связанных TexBox-ов и ячеек?!
Вложения
Тип файла: zip Tabel_Form.zip (26.2 Кб, 163 просмотров)
0
3946 / 2339 / 790
Регистрация: 02.11.2012
Сообщений: 6,216
19.10.2015, 13:40
покажите ваши наработки.
0
 Аватар для mostApi
8 / 6 / 0
Регистрация: 15.05.2015
Сообщений: 350
19.10.2015, 14:08
Попутно спрошу, при объявлении выпадающего списка в ComboBox нельзя указать диапазон по строке?
Visual Basic
1
2
3
4
5
6
7
8
9
10
With ComboBox2
.Clear
'.AddItem Range("D10:AH10").Value - ???
.AddItem Range("D10").Value
.AddItem Range("E10").Value
.AddItem Range("F10").Value
.AddItem Range("G10").Value
и т.д.
.ListIndex = -1
End With
- или циклом заводить?
П.С. Пример табеля как бы тестовый, в созданном я не правил и не выкладывал оригинал...
0
 Аватар для dzug
695 / 236 / 18
Регистрация: 17.01.2011
Сообщений: 583
Записей в блоге: 1
19.10.2015, 14:26
попробуйте так

Visual Basic
1
ComboBox2.List = [D10:G10].Value
0
 Аватар для mostApi
8 / 6 / 0
Регистрация: 15.05.2015
Сообщений: 350
19.10.2015, 14:31
Не ругается, но вы водит только первую ячейку из диапазона... Диапазон: [D10:AH10], т.е. D10 E10 F10 и т.д. по строке...
0
 Аватар для dzug
695 / 236 / 18
Регистрация: 17.01.2011
Сообщений: 583
Записей в блоге: 1
19.10.2015, 14:53
Да, это работает для столбца. Для строки сейчас посмотрю.

Добавлено через 12 минут
Вот так работает:

Visual Basic
1
2
3
4
With ComboBox2
For i = 4 To 34
.AddItem Cells(10, i)
Next
1
 Аватар для mostApi
8 / 6 / 0
Регистрация: 15.05.2015
Сообщений: 350
19.10.2015, 15:03
dzug, да, циклом работает... спасибо!
Как в моем случае нужно было написать, чтоб при выборе значений в ComBox-ах обновлялись значения соответствующих TexBox-ов?
0
3946 / 2339 / 790
Регистрация: 02.11.2012
Сообщений: 6,216
19.10.2015, 15:08
можно так
Visual Basic
1
.List = Application.Transpose(Range("D10:AH10"))
1
 Аватар для dzug
695 / 236 / 18
Регистрация: 17.01.2011
Сообщений: 583
Записей в блоге: 1
19.10.2015, 15:19
Смотри Эксель - вложение к 3 посту, там есть обновление.
0
 Аватар для pashulka
4138 / 2242 / 940
Регистрация: 01.12.2010
Сообщений: 4,624
19.10.2015, 15:22
У ComboBox/ListBox есть ещё свойство Column, которое позволит осуществить желаемое, причём без цикла и транспонирования

Visual Basic
1
ComboBox2.Column = [D10:G10].Value
1
 Аватар для mostApi
8 / 6 / 0
Регистрация: 15.05.2015
Сообщений: 350
19.10.2015, 15:34
dzug, pashulka, - посмотрел код, вроде как нашел где и как.., не могу понять как применить...
0
 Аватар для pashulka
4138 / 2242 / 940
Регистрация: 01.12.2010
Сообщений: 4,624
19.10.2015, 17:11
mostApi, Конкретно для Вашей таблицы (только заполнение TextBox/ComboBox)

Visual Basic
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
Private Sub UserForm_Initialize()
    Label5.Caption = ActiveSheet.Name
    With ComboBox1
         .Clear
         .Style = fmStyleDropDownList
         For iRow = 11 To Cells(Rows.Count, 3).End(xlUp).Row Step 2
             .AddItem Cells(iRow, 3)
         Next
         '.ListIndex = -1
    End With
    With ComboBox2
         .Clear
         .Style = fmStyleDropDownList
         .Column = Range("D10:AH10").Value
         '.ListIndex = -1
    End With
End Sub
 
Private Sub ComboBox1_Change()
    If ComboBox1.ListIndex > -1 And ComboBox2.ListIndex > -1 Then SetTime
End Sub
 
Private Sub ComboBox2_Change()
    If ComboBox1.ListIndex > -1 And ComboBox2.ListIndex > -1 Then SetTime
End Sub
 
Private Sub SetTime()
    With Columns(3).Find(ComboBox1, , xlValues, xlWhole)
         TextBox1 = Format(.Cells(1, ComboBox2.ListIndex + 2), "Long Time")
         TextBox2 = Format(.Cells(2, ComboBox2.ListIndex + 2), "Long Time")
    End With
    'Можно и через Cells + ComboBox1.ListIndex + ComboBox2.ListIndex
End Sub
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
19.10.2015, 17:11
Помогаю со студенческими работами здесь

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

Excel: форма ввода данных в таблицу
Доброго времени суток! Но форуме в первый раз, так что извините, если что не так. Мне нужно быстро заполнять таблицу в экселе, через...

Форма ввода данных в связанные таблицы
Есть схема данных (см. картинки). Первая картинка - все данные, вторая - нужные для формы ввода. Надо сделать форму ввода, через которую...

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

Форма только для редактирования.
Возникла такая проблема, посоветуйте пожалуйста, как ее лучше решить: Есть Frameset с двумя Frame, в левом View в правом Form. При...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru