![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 25.03.2010
Сообщений: 417
|
![]()
Здравствуйте
Подскажите, если кто знает. Как в RefEdit'е сделать ограничение вводимых данных. Нужно что б можно было вводить только отдельные ячейки (мышкой щелкать по листу с нажтым CTRL), но не диапазоны! |
![]() |
![]() |
![]() |
#2 |
Участник клуба
Регистрация: 17.07.2009
Сообщений: 1,088
|
![]()
В общем-то непосредственно при выборе запретить нельзя. Можно проверять уже после выбора значений:
Код:
WebMoney - R298726502453; Яндекс.Деньги - 41001332272872
www.excel-vba.ru |
![]() |
![]() |
![]() |
#3 | |
Форумчанин
Регистрация: 25.03.2010
Сообщений: 417
|
![]()
Хотелось бы доработать код таким образом:
Цитата:
Хотелось бы, но ничего неполучается, что и неудивительно... |
|
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 25.03.2010
Сообщений: 417
|
![]()
А ошибка вот в чем: как получить значение RefEdit1 до добавления в нее очередной ячейки?
|
![]() |
![]() |
![]() |
#5 | |
Форумчанин
Регистрация: 25.03.2010
Сообщений: 417
|
![]() Цитата:
Скажем, полчил я RefEdit1.Value = "Лист1!$O$9;Лист1!$A$10;Лист1!$U$11 ". Дальше создаю массив t = Split(FormMat.RefEdit1.Value, ";") и получаю значения соседних ячеек с последующей записью их в определенном порядке в другом файле: With ThisWorkbook.Sheets(1) For n = LBound(t) To UBound(t) am = Mid(t(n), InStr(1, t(n), "$", 1)) .Cells(i, 22 + n * 6).Value = Sheets(1).Range(am).Offset(0, 0).Value .Cells(i, 23 + n * 6).Value = Sheets(1).Range(am).Offset(0, -1).Value .Cells(i, 24 + n * 6).Value = Sheets(1).Range(am).Offset(0, 1).Value .Cells(i, 25 + n * 6).Value = Sheets(1).Range(am).Offset(0, 2).Value .Cells(i, 26 + n * 6).Value = Sheets(1).Range(am).Offset(0, 3).Value .Cells(i, 27 + n * 6).Value = Sheets(1).Range(am).Offset(0, 7).Value Next n End With И поскольку у меня ни кокогда не было информатики и я в этом ни чего не понимаю, то по другому не знаю как... Последний раз редактировалось maksim_serg; 31.03.2010 в 11:14. |
|
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 25.03.2010
Сообщений: 417
|
![]()
а если выделяю диапазон, то данные беруться только относительно первой ячейки...
|
![]() |
![]() |
![]() |
#7 |
Участник клуба
Регистрация: 17.07.2009
Сообщений: 1,088
|
![]()
Я уже писал, что при изменении нельзя сделать. Да и незачем. Сделайте так:
Код:
WebMoney - R298726502453; Яндекс.Деньги - 41001332272872
www.excel-vba.ru |
![]() |
![]() |
![]() |
#8 |
Форумчанин
Регистрация: 25.03.2010
Сообщений: 417
|
![]()
"Хотя до сих пор не понимаю зачем это надо, а Вы не хотите говорить"
И поскольку у меня ни кокогда не было информатики и я в этом ни чего не понимаю, то по другому не знаю как... Я не знаю как обработать диапазон для получения значений каждой ячейки. Да и впринципе, поскольку это только для меня, лишние две страницы кода - мне не помеха |
![]() |
![]() |
![]() |
#9 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,858
|
![]()
Перебрать ячейки в диапазоне очень просто:
Код:
Код:
|
![]() |
![]() |
![]() |
#10 |
Форумчанин
Регистрация: 25.03.2010
Сообщений: 417
|
![]()
что то похожее их далека на второй код составить не трудно, просто мне казалась что это можно сделать нетолько через цикл. Ну да ладно. пойду дальше редактировать свой код методои проб и ошибок.
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ограничение на ввод данных в подчиненной форме. | mnz2002 | Microsoft Office Access | 2 | 08.02.2010 19:17 |
Ограничение на ввод символов в "поле ввода" | zvezda_t | JavaScript, Ajax | 0 | 07.02.2010 19:57 |
Ввод данных | SAWER | Win Api | 0 | 25.11.2009 13:20 |
Ограничение ввода данных в поле | pgerasimov | JavaScript, Ajax | 1 | 11.08.2009 19:01 |
Ограничение на ввод символов | ANTI1 | Общие вопросы Delphi | 4 | 17.12.2008 16:30 |