Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Microsoft Office и VBA > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 25 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 27.07.2017, 13:25   #1
Kizim
Пользователь
 
Регистрация: 01.07.2017
Сообщений: 17
Репутация: 10
По умолчанию как сделать так, чтоб при открытии формы она считывала информацию из строки

Помогите решить задачу. Есть программа с уже введёнными данными. Нужно внести изменение в уже имеющиеся данные в строках. Для этого столбец =Е= Двойным кликом вызывает форму для ввода данных. Но она открывается пустой и все данные нужно переписывать заново. А можно сделать так , чтоб при открытии формы - она считывала уже имеющиеся данные в нужной строке. Мы вносили одно изменение и строка переписывалась со всеми данными. Встроенная форма в Ексель не подходит, так как в моей программе ввод данных полностью автоматизирован и используются одинаковые шаблоны слов для ввода данных. Помогите пожалуйста....
Вложения
Тип файла: xls Двойной клик на столбце Е.xls (349.0 Кб, 13 просмотров)
Kizim вне форума   Ответить с цитированием
Старый 27.07.2017, 13:51   #2
Aleksandr H.
2 the Nation Glory
Профессионал
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Адрес: Wild West Ukraine
Сообщений: 2,669
Репутация: 1096
По умолчанию

тебе ж в другой теме показал как сделать.

Цитата:
Сообщение от Kizim Посмотреть сообщение
А можно сделать так , чтоб при открытии формы - она считывала уже имеющиеся данные в нужной строке.
Код:
Private Sub UserForm_Initialize()
    Me.TextBox1 = ActiveSheet.Cells(ActiveCell.Row, 1)
    Me.TextBox2 = ActiveSheet.Cells(ActiveCell.Row, 2)
    Me.TextBox3 = ActiveSheet.Cells(ActiveCell.Row, 3)
    Me.TextBox4 = ActiveSheet.Cells(ActiveCell.Row, 4)
End Sub
Цитата:
Мы вносили одно изменение и строка переписывалась со всеми данными.
Код:
Private Sub CommandButton1_Click()
    Dim iLastRow As Long
    iLastRow = ActiveCell.Row
    Cells(iLastRow, 1) = Me.TextBox1
    Cells(iLastRow, 2) = Me.TextBox2
    Cells(iLastRow, 3) = Me.TextBox3
    Cells(iLastRow, 4) = Me.TextBox4
    Me.TextBox1 = ""
    Me.TextBox2 = ""
    Me.TextBox3 = ""
    Me.TextBox4 = ""
    MsgBox "Добавлено!", vbInformation, "Введено"
End Sub
__________________
Mailto: media.project@ukr.net
Aleksandr H. вне форума   Ответить с цитированием
Старый 27.07.2017, 14:03   #3
Kizim
Пользователь
 
Регистрация: 01.07.2017
Сообщений: 17
Репутация: 10
По умолчанию

Цитата:
Сообщение от Aleksandr H. Посмотреть сообщение


Код:
Private Sub UserForm_Initialize()
    Me.TextBox1 = ActiveSheet.Cells(ActiveCell.Row, 1)
    Me.TextBox2 = ActiveSheet.Cells(ActiveCell.Row, 2)
    Me.TextBox3 = ActiveSheet.Cells(ActiveCell.Row, 3)
    Me.TextBox4 = ActiveSheet.Cells(ActiveCell.Row, 4)
End Sub

Код:
Private Sub CommandButton1_Click()
    Dim iLastRow As Long
    iLastRow = ActiveCell.Row
    Cells(iLastRow, 1) = Me.TextBox1
    Cells(iLastRow, 2) = Me.TextBox2
    Cells(iLastRow, 3) = Me.TextBox3
    Cells(iLastRow, 4) = Me.TextBox4
    Me.TextBox1 = ""
    Me.TextBox2 = ""
    Me.TextBox3 = ""
    Me.TextBox4 = ""
    MsgBox "Добавлено!", vbInformation, "Введено"
End Sub
Спасибо огромное. Понял где ошибся. Всё идеально работает.
Kizim вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
При протягивании значений, как сделать так чтоб временно не срабатывала процедура Worksheet_SelectionChange? RISagitov Microsoft Office Excel 9 20.10.2015 14:10
Как сделать так чтоб при запуске программы сразу показывалась не одна форма а две либо больше? Jleksern Общие вопросы Delphi 4 19.01.2012 18:55
JQuery! Анимация, Как увеличить картинку так, чтоб она не смещалась? AlienNation JavaScript, Ajax 2 05.10.2011 00:38
как сделать так чтоб моя прога при запуске о.с. стартовала steck Общие вопросы Delphi 11 03.04.2007 20:10
как сделать так чтобы при открытии второй формы олько она была активной doncova1 Общие вопросы Delphi 2 03.02.2007 20:34


16:46.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.