Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Процедура Worksheet_BeforeDoubleClick для нескольких ячеек - Страница 2 - Мир MS Excel

Старая форма входа
  • Страница 2 из 2
  • «
  • 1
  • 2
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Процедура Worksheet_BeforeDoubleClick для нескольких ячеек (Макросы/Sub)
Процедура Worksheet_BeforeDoubleClick для нескольких ячеек
Лорик Дата: Пятница, 03.10.2014, 10:59 | Сообщение № 21
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 109
Репутация: 1 ±
Замечаний: 0% ±

Excel 2010
Шаблоны содержат в себе формулы (объем * на цену=затраты). Поэтому нужно, чтобы шаблоны полностью копировались и добавлялись в том виде как указанны в таблице (в разделе). В случае если шаблон уже заполнен данными (цифрами), нужно его перед добавлением очищать (кроме формул) от предыдущих данных, т.е чтобы в новом добавленном шаблоне можно было внести новые показатели.
 
Ответить
СообщениеШаблоны содержат в себе формулы (объем * на цену=затраты). Поэтому нужно, чтобы шаблоны полностью копировались и добавлялись в том виде как указанны в таблице (в разделе). В случае если шаблон уже заполнен данными (цифрами), нужно его перед добавлением очищать (кроме формул) от предыдущих данных, т.е чтобы в новом добавленном шаблоне можно было внести новые показатели.

Автор - Лорик
Дата добавления - 03.10.2014 в 10:59
Лорик Дата: Пятница, 03.10.2014, 11:03 | Сообщение № 22
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 109
Репутация: 1 ±
Замечаний: 0% ±

Excel 2010
Файл сохранен в виде Excel 97-2003
К сообщению приложен файл: 6499409.xls (43.0 Kb)
 
Ответить
СообщениеФайл сохранен в виде Excel 97-2003

Автор - Лорик
Дата добавления - 03.10.2014 в 11:03
Alex_ST Дата: Пятница, 03.10.2014, 12:12 | Сообщение № 23
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3206
Репутация: 609 ±
Замечаний: 0% ±

2003
Отвлекли на работу... :)
Сделать до отъезда не успею.
Есть только мысли.
1. Все шаблоны удобнее вынести на отдельный лист, назвав его, например, "Образец" и после отладки скрыв от пользователей. "Во избежание" так сказать.
2. Шаблоны я бы делал "во всю строку". Так, мне кажется, будет удобнее вставлять.
3. Имена "имя1", …, "имя3" удобнее было бы заменить на осмысленные "Заголовок1", …, "Заголовок3". И при этом, может быть их тоже целыми строками сделать? Тогда даблклик по любой ячейке заголовка вызовет добавление шаблона.
4. Что-то у Вас, кажется, в структуре не совсем верно. Ваши формулы, вставляемые вместе с шаблонами, будут считать только ИТОГО по каждому шаблону, а не суммарные затраты по разделу. Тут бы надо, наверное, ещё и строку с формулой, считающей общую сумму добавить. А если дать этим строкам имена "Сумма1", …"Сумма3", то это будет перемещающийся по мере роста раздела указатель его нижней границы, по которому очень удобно будет макросом строки шаблонов вставлять в конец списка каждого раздела.

Ну, что-то типа этого.
Только я пока формулы для сумм по разделам не прописал. (У меня с формулами вообще отношения сложные :) )
К сообщению приложен файл: 4Lorik2.xls (51.0 Kb)



С уважением,
Алексей
MS Excel 2003 - the best!!!


Сообщение отредактировал Alex_ST - Пятница, 03.10.2014, 18:18
 
Ответить
СообщениеОтвлекли на работу... :)
Сделать до отъезда не успею.
Есть только мысли.
1. Все шаблоны удобнее вынести на отдельный лист, назвав его, например, "Образец" и после отладки скрыв от пользователей. "Во избежание" так сказать.
2. Шаблоны я бы делал "во всю строку". Так, мне кажется, будет удобнее вставлять.
3. Имена "имя1", …, "имя3" удобнее было бы заменить на осмысленные "Заголовок1", …, "Заголовок3". И при этом, может быть их тоже целыми строками сделать? Тогда даблклик по любой ячейке заголовка вызовет добавление шаблона.
4. Что-то у Вас, кажется, в структуре не совсем верно. Ваши формулы, вставляемые вместе с шаблонами, будут считать только ИТОГО по каждому шаблону, а не суммарные затраты по разделу. Тут бы надо, наверное, ещё и строку с формулой, считающей общую сумму добавить. А если дать этим строкам имена "Сумма1", …"Сумма3", то это будет перемещающийся по мере роста раздела указатель его нижней границы, по которому очень удобно будет макросом строки шаблонов вставлять в конец списка каждого раздела.

Ну, что-то типа этого.
Только я пока формулы для сумм по разделам не прописал. (У меня с формулами вообще отношения сложные :) )

Автор - Alex_ST
Дата добавления - 03.10.2014 в 12:12
Лорик Дата: Пятница, 03.10.2014, 12:48 | Сообщение № 24
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 109
Репутация: 1 ±
Замечаний: 0% ±

Excel 2010
Спасибо всем кто мне помогал.
RAN, Ваш последний вариант работает.
Alex_ST, спасибо за мысли и советы, удачного отпуска!
 
Ответить
СообщениеСпасибо всем кто мне помогал.
RAN, Ваш последний вариант работает.
Alex_ST, спасибо за мысли и советы, удачного отпуска!

Автор - Лорик
Дата добавления - 03.10.2014 в 12:48
Gustav Дата: Пятница, 03.10.2014, 12:50 | Сообщение № 25
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2733
Репутация: 1136 ±
Замечаний: 0% ±

начинал с Excel 4.0, видел 2.1
Чтобы обратиться к листу, на котором расположен именованный диапазон, нужно использовать свойство .Parent.
Например, снять защиту с листа, на котором расположен диапазон "шаблон": [шаблон].Parent.Unprotect

Тогда уж не Parent, а Worksheet - нагляднее и "полезнее" в плане доступности списка методов по точке:
[vba]
Код
Range("шаблон").Worksheet.Unprotect
[/vba]


МОИ: Ник, Tip box: 41001663842605
 
Ответить
Сообщение
Чтобы обратиться к листу, на котором расположен именованный диапазон, нужно использовать свойство .Parent.
Например, снять защиту с листа, на котором расположен диапазон "шаблон": [шаблон].Parent.Unprotect

Тогда уж не Parent, а Worksheet - нагляднее и "полезнее" в плане доступности списка методов по точке:
[vba]
Код
Range("шаблон").Worksheet.Unprotect
[/vba]

Автор - Gustav
Дата добавления - 03.10.2014 в 12:50
Alex_ST Дата: Пятница, 03.10.2014, 21:39 | Сообщение № 26
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3206
Репутация: 609 ±
Замечаний: 0% ±

2003
Gustav, спасибо за поправку. Что-то я почему-то до такого простого решения не допёр.
Что у листа есть свойство ДИАПАЗОН - это очевидно. Но ведь и у диапазона есть свойство ЛИСТ!

Лорик,
я-таки Вас не бросил и сделал файл. Всё оказалось элементарно просто.

Лист "Образец" надо будет потом скрыть на всякий случай (Формат-Лист-Скрыть в 2003. Как в 2007 и позднее - не знаю).
Диапазоны "Заголовок", даблклик по которым вызывает добавление шаблона, вполне можно сделать и не на всю строку, а только на несколько (хоть одну) ячеек.

На листе "Образец" серым залита табличка соответствия имён и диапазонов. Она для работы не нужна. Только для пояснения тем, кто будет разбираться. Её вполне можно удалить если всё и так ясно.

Ловите файл.
К сообщению приложен файл: 4Lorik2.2.xls (55.0 Kb)



С уважением,
Алексей
MS Excel 2003 - the best!!!


Сообщение отредактировал Alex_ST - Пятница, 03.10.2014, 22:02
 
Ответить
СообщениеGustav, спасибо за поправку. Что-то я почему-то до такого простого решения не допёр.
Что у листа есть свойство ДИАПАЗОН - это очевидно. Но ведь и у диапазона есть свойство ЛИСТ!

Лорик,
я-таки Вас не бросил и сделал файл. Всё оказалось элементарно просто.

Лист "Образец" надо будет потом скрыть на всякий случай (Формат-Лист-Скрыть в 2003. Как в 2007 и позднее - не знаю).
Диапазоны "Заголовок", даблклик по которым вызывает добавление шаблона, вполне можно сделать и не на всю строку, а только на несколько (хоть одну) ячеек.

На листе "Образец" серым залита табличка соответствия имён и диапазонов. Она для работы не нужна. Только для пояснения тем, кто будет разбираться. Её вполне можно удалить если всё и так ясно.

Ловите файл.

Автор - Alex_ST
Дата добавления - 03.10.2014 в 21:39
Alex_ST Дата: Пятница, 03.10.2014, 21:52 | Сообщение № 27
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3206
Репутация: 609 ±
Замечаний: 0% ±

2003
Или вот так с запросами подтверждения:

А если не понятно, то вот точно то же самое, но в "классической" записи (намного длиннее):



С уважением,
Алексей
MS Excel 2003 - the best!!!


Сообщение отредактировал Alex_ST - Пятница, 03.10.2014, 22:00
 
Ответить
СообщениеИли вот так с запросами подтверждения:

А если не понятно, то вот точно то же самое, но в "классической" записи (намного длиннее):

Автор - Alex_ST
Дата добавления - 03.10.2014 в 21:52
Serge_007 Дата: Пятница, 03.10.2014, 21:53 | Сообщение № 28
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Формат-Лист-Скрыть в 2003. Как в 2007 и позднее - не знаю
Немного удобнее и интуитивнее понятнее: ПКМ на скрываемом листе - Скрыть


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
Формат-Лист-Скрыть в 2003. Как в 2007 и позднее - не знаю
Немного удобнее и интуитивнее понятнее: ПКМ на скрываемом листе - Скрыть

Автор - Serge_007
Дата добавления - 03.10.2014 в 21:53
Лорик Дата: Суббота, 04.10.2014, 06:43 | Сообщение № 29
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 109
Репутация: 1 ±
Замечаний: 0% ±

Excel 2010
Лорик,
я-таки Вас не бросил


Alex_ST, СПАСИБО ОГРОМНОЕ, все работает замечательно!

Еще раз всем, всем, участвующим СПАСИБО!!!
 
Ответить
Сообщение
Лорик,
я-таки Вас не бросил


Alex_ST, СПАСИБО ОГРОМНОЕ, все работает замечательно!

Еще раз всем, всем, участвующим СПАСИБО!!!

Автор - Лорик
Дата добавления - 04.10.2014 в 06:43
Alex_ST Дата: Суббота, 04.10.2014, 11:15 | Сообщение № 30
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3206
Репутация: 609 ±
Замечаний: 0% ±

2003
Немного удобнее и интенсивнее понятнее: ПКМ на скрываемом листе - Скрыть

Может быть и так. Я не знаю. У меня в обоих офисах надстройка работает, добавляющая в меню ПКМ на ярлыке листа пункты "Скрыть", "Запрятать" (в смысле VeryHidden :) ) и "Управление видимостью листов" (есть в "Готовых решениях").
Поэтому я не помню, что там моё, а что родное :D



С уважением,
Алексей
MS Excel 2003 - the best!!!
 
Ответить
Сообщение
Немного удобнее и интенсивнее понятнее: ПКМ на скрываемом листе - Скрыть

Может быть и так. Я не знаю. У меня в обоих офисах надстройка работает, добавляющая в меню ПКМ на ярлыке листа пункты "Скрыть", "Запрятать" (в смысле VeryHidden :) ) и "Управление видимостью листов" (есть в "Готовых решениях").
Поэтому я не помню, что там моё, а что родное :D

Автор - Alex_ST
Дата добавления - 04.10.2014 в 11:15
Alex_ST Дата: Понедельник, 06.10.2014, 21:36 | Сообщение № 31
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3206
Репутация: 609 ±
Замечаний: 0% ±

2003
Alex_ST, СПАСИБО ОГРОМНОЕ, все работает замечательно!
rules
Цитата Правила_форума, 18.08.2010 в 09:53 в сообщении №1
P.S. Если Вам помогли и Вы хотите сказать "Спасибо" форумчанину помогшему Вам - нажмите "+" напротив надписи "Репутация" в любом его посте.



С уважением,
Алексей
MS Excel 2003 - the best!!!


Сообщение отредактировал Alex_ST - Понедельник, 06.10.2014, 21:37
 
Ответить
Сообщение
Alex_ST, СПАСИБО ОГРОМНОЕ, все работает замечательно!
rules
Цитата Правила_форума, 18.08.2010 в 09:53 в сообщении №1
P.S. Если Вам помогли и Вы хотите сказать "Спасибо" форумчанину помогшему Вам - нажмите "+" напротив надписи "Репутация" в любом его посте.

Автор - Alex_ST
Дата добавления - 06.10.2014 в 21:36
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Процедура Worksheet_BeforeDoubleClick для нескольких ячеек (Макросы/Sub)
  • Страница 2 из 2
  • «
  • 1
  • 2
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!