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

Вход

Регистрация

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

 

= Мир MS Excel/Программа для очистки рабочей книги - Страница 2 - Мир MS Excel

Старая форма входа
  • Страница 2 из 7
  • «
  • 1
  • 2
  • 3
  • 4
  • 6
  • 7
  • »
Модератор форума: _Boroda_, китин  
Мир MS Excel » Вопросы и решения » Готовые решения » Программа для очистки рабочей книги (Автоматич. удал. мусора (метод предлож. Дж. Уокенбахом))
Программа для очистки рабочей книги
v__step Дата: Пятница, 28.10.2011, 22:42 | Сообщение № 21
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 225
Репутация: 27 ±
Замечаний: 0% ±

Добрый вечер, Леша!
Меня не забыли... я уже распереживался...

Тоже были проблемы на работе - не мог сосредоточиться, все думал об утилите, а с понедельника закрутится так, что чихнуть некогда будет - я остаюсь один расчетчик на СКБ, т.к. коллега уходит в отпуск.

Давайте, немножко подождем, я очень боюсь снова отправить Вам что-нибудь совсем сырое...
Давайте, завтра, ладно, ну пожалуйста sad

Сейчас вожусь с автофильтром, а Ole оставил в покое, пусть пока живут с перегруппировкой - Бог им судья

Кажется, есть одна интересная мысль
Давайте, сделаем отдельную кнопку для "легкой" очистки - такая нужна в 90% случаев (это и есть фитнес) - не трогать ничего, не создавать новый файл, а просто удалить строки снизу и столбцы справа (я это часто делаю вручную и не сомневаюсь в эффективности), а для очистки кода нет ничего лучше, чем легендарная утилита Боуви - так мы разместим на нее гиперссылку прямо в книге.
А для профессионалов, конечно, важна чистота, а не размер - они могут смириться с неполнотой очистки, выполнить все дополнительные операции вручную и радоваться по-настоящему новорожденной книге!

За файлы спасибо! Надстройку пересохранил как рабочую книгу - вроде бы прошла
В рабочей книге сбилась высота строки в верхней панели разделенного окна
Автофильтры, естественно, пока не восстанавливаются, но это меня не пугает

Завтра попробую поднажать
Давайте, договоримся, завтра вечером выкладываю в том виде, в каком есть!
Ну самый крайний срок - послезавтра smile


С уважением, Владимир

Сообщение отредактировал v__step - Пятница, 28.10.2011, 23:26
 
Ответить
СообщениеДобрый вечер, Леша!
Меня не забыли... я уже распереживался...

Тоже были проблемы на работе - не мог сосредоточиться, все думал об утилите, а с понедельника закрутится так, что чихнуть некогда будет - я остаюсь один расчетчик на СКБ, т.к. коллега уходит в отпуск.

Давайте, немножко подождем, я очень боюсь снова отправить Вам что-нибудь совсем сырое...
Давайте, завтра, ладно, ну пожалуйста sad

Сейчас вожусь с автофильтром, а Ole оставил в покое, пусть пока живут с перегруппировкой - Бог им судья

Кажется, есть одна интересная мысль
Давайте, сделаем отдельную кнопку для "легкой" очистки - такая нужна в 90% случаев (это и есть фитнес) - не трогать ничего, не создавать новый файл, а просто удалить строки снизу и столбцы справа (я это часто делаю вручную и не сомневаюсь в эффективности), а для очистки кода нет ничего лучше, чем легендарная утилита Боуви - так мы разместим на нее гиперссылку прямо в книге.
А для профессионалов, конечно, важна чистота, а не размер - они могут смириться с неполнотой очистки, выполнить все дополнительные операции вручную и радоваться по-настоящему новорожденной книге!

За файлы спасибо! Надстройку пересохранил как рабочую книгу - вроде бы прошла
В рабочей книге сбилась высота строки в верхней панели разделенного окна
Автофильтры, естественно, пока не восстанавливаются, но это меня не пугает

Завтра попробую поднажать
Давайте, договоримся, завтра вечером выкладываю в том виде, в каком есть!
Ну самый крайний срок - послезавтра smile

Автор - v__step
Дата добавления - 28.10.2011 в 22:42
Alex_ST Дата: Пятница, 28.10.2011, 23:25 | Сообщение № 22
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3208
Репутация: 609 ±
Замечаний: 0% ±

2003
Quote (v__step)
Давайте, завтра, ладно, ну пожалуйста

Давайте уж лучше выходные посвятим семейным делам, а уж на работе в понедельник можно будет и утилитой заняться. biggrin
По поводу лёгкой чистки: надо бы ещё проверить условное форматирование в оставляемой области листа на отсутствие в его формулах ошибок.
Очень часто вижу, что начинает какую-нибудь таблицу кто-нибудь знакомый с формулами в УФ, а потом уже эту табличку кто-то другой "дорабатывает" кривыми руками и в результате этих "доработок" в формулах УФ появляются ошибки. НО ОНИ НИКАК НЕ ОТОБРАЖАЮТСЯ НА ЛИСТЕ! Просто УФ не работает и всё... А кто вспомнит, что оно там когда-то было и нормально работало?
То же касается и вычисляемых имён. Если есть ошибки вычисления, то нужно спрашивать юзера, а что с такими именами делать?

Ну, это так... мысли на скорую руку smile
Пора возвращаться в лоно семьи.
Спокойной ночи. Выхожу из сети.



С уважением,
Алексей
MS Excel 2003 - the best!!!
 
Ответить
Сообщение
Quote (v__step)
Давайте, завтра, ладно, ну пожалуйста

Давайте уж лучше выходные посвятим семейным делам, а уж на работе в понедельник можно будет и утилитой заняться. biggrin
По поводу лёгкой чистки: надо бы ещё проверить условное форматирование в оставляемой области листа на отсутствие в его формулах ошибок.
Очень часто вижу, что начинает какую-нибудь таблицу кто-нибудь знакомый с формулами в УФ, а потом уже эту табличку кто-то другой "дорабатывает" кривыми руками и в результате этих "доработок" в формулах УФ появляются ошибки. НО ОНИ НИКАК НЕ ОТОБРАЖАЮТСЯ НА ЛИСТЕ! Просто УФ не работает и всё... А кто вспомнит, что оно там когда-то было и нормально работало?
То же касается и вычисляемых имён. Если есть ошибки вычисления, то нужно спрашивать юзера, а что с такими именами делать?

Ну, это так... мысли на скорую руку smile
Пора возвращаться в лоно семьи.
Спокойной ночи. Выхожу из сети.

Автор - Alex_ST
Дата добавления - 28.10.2011 в 23:25
v__step Дата: Суббота, 29.10.2011, 16:12 | Сообщение № 23
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 225
Репутация: 27 ±
Замечаний: 0% ±

Предлагаю тему имен считать отдельной
Кроме имен, мне очень интересно все, что связано с навигацией по связанным ячейкам

Все три направления (чистка-копирование, имена и связанные ячейки) перекликаются друг с другом и просятся в одну хорошую утилиту + теория, наглядные описания, примеры и т.д.

Вплотную к этим вопросам подходят еще один - создание простого и наглядного командного ЯЗЫКА для листа, распознаваемого простыми макросами

Есть еще одна родственная проблема - вариантность вычислений (возможности сценариев ограничены, а интерфейс предельно слаб). Никак не могу отделаться от впечатления, что рабочие листы Excel должны стать не 2-х мерными, а как минимум, 3-х мерными, и 3-е измерение я бы сразу стал использовал как пространство вариантов...
(я не имею в виду 3d-формулы с единственной возможностью 3d-итогов (сумма, максимум, среднее, и т.д.))

Мне даже больше по душе радикальное расширение вариантности ячеек (где-то рядом, но не совсем то же)
Только представьте себе... каждая ячейка содержит большое количество значений, формул, и на каждый вариант есть ССЫЛКИ из других ячеек (можно использовать некоторое подобие 3d-ссылок), и есть соответствующая НАВИГАЦИЯ, и есть соответствующие ФОРМУЛЫ РАБОЧЕГО ЛИСТА...

Я бы с удовольствием посвятил свободное время этим вопросам
Да вот со временем проблемы... вечные

Пока что бросил все и отдал субботний вечер Вашему Удобному Автофильтру
Жму руку - красивая работа, я совершенно потерял работоспособность и ушел в меланхолию
Понимаете, это же и есть то самое - заметить нечто необычное рядом, совсем рядом...
"Многие приходят и смотрят... смотрят... Некоторые приходят и видят..."

Мне показалось, что наиболее интересное у Вас перекликается с поднимаемыми вопросами...


С уважением, Владимир

Сообщение отредактировал v__step - Воскресенье, 30.10.2011, 12:01
 
Ответить
СообщениеПредлагаю тему имен считать отдельной
Кроме имен, мне очень интересно все, что связано с навигацией по связанным ячейкам

Все три направления (чистка-копирование, имена и связанные ячейки) перекликаются друг с другом и просятся в одну хорошую утилиту + теория, наглядные описания, примеры и т.д.

Вплотную к этим вопросам подходят еще один - создание простого и наглядного командного ЯЗЫКА для листа, распознаваемого простыми макросами

Есть еще одна родственная проблема - вариантность вычислений (возможности сценариев ограничены, а интерфейс предельно слаб). Никак не могу отделаться от впечатления, что рабочие листы Excel должны стать не 2-х мерными, а как минимум, 3-х мерными, и 3-е измерение я бы сразу стал использовал как пространство вариантов...
(я не имею в виду 3d-формулы с единственной возможностью 3d-итогов (сумма, максимум, среднее, и т.д.))

Мне даже больше по душе радикальное расширение вариантности ячеек (где-то рядом, но не совсем то же)
Только представьте себе... каждая ячейка содержит большое количество значений, формул, и на каждый вариант есть ССЫЛКИ из других ячеек (можно использовать некоторое подобие 3d-ссылок), и есть соответствующая НАВИГАЦИЯ, и есть соответствующие ФОРМУЛЫ РАБОЧЕГО ЛИСТА...

Я бы с удовольствием посвятил свободное время этим вопросам
Да вот со временем проблемы... вечные

Пока что бросил все и отдал субботний вечер Вашему Удобному Автофильтру
Жму руку - красивая работа, я совершенно потерял работоспособность и ушел в меланхолию
Понимаете, это же и есть то самое - заметить нечто необычное рядом, совсем рядом...
"Многие приходят и смотрят... смотрят... Некоторые приходят и видят..."

Мне показалось, что наиболее интересное у Вас перекликается с поднимаемыми вопросами...

Автор - v__step
Дата добавления - 29.10.2011 в 16:12
v__step Дата: Понедельник, 31.10.2011, 10:59 | Сообщение № 24
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 225
Репутация: 27 ±
Замечаний: 0% ±

Автофильтры заработали, хотя там есть замороженные проблемы
Подробнее - на новом листе "Разработка"
При разбивке окна на несколько панелей для верхней панели сбивается высота строк

Прекрасно понимаю, что хомутов предостаточно, но текущий вариант должен быть
Над копированием объектов работаем
К сообщению приложен файл: CleanerV008.zip (50.5 Kb)


С уважением, Владимир

Сообщение отредактировал v__step - Понедельник, 31.10.2011, 11:12
 
Ответить
СообщениеАвтофильтры заработали, хотя там есть замороженные проблемы
Подробнее - на новом листе "Разработка"
При разбивке окна на несколько панелей для верхней панели сбивается высота строк

Прекрасно понимаю, что хомутов предостаточно, но текущий вариант должен быть
Над копированием объектов работаем

Автор - v__step
Дата добавления - 31.10.2011 в 10:59
Alex_ST Дата: Понедельник, 31.10.2011, 12:58 | Сообщение № 25
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3208
Репутация: 609 ±
Замечаний: 0% ±

2003
Quote (v__step)
Вплотную к этим вопросам подходят еще один - создание простого и наглядного командного ЯЗЫКА для листа, распознаваемого простыми макросами

Есть еще одна родственная проблема - вариантность вычислений (возможности сценариев ограничены, а интерфейс предельно слаб). Никак не могу отделаться от впечатления, что рабочие листы Excel должны стать не 2-х мерными, а как минимум, 3-х мерными, и 3-е измерение я бы сразу стал использовал как пространство вариантов...
(я не имею в виду 3d-формулы с единственной возможностью 3d-итогов (сумма, максимум, среднее, и т.д.))

Мне даже больше по душе радикальное расширение вариантности ячеек (где-то рядом, но не совсем то же)
Только представьте себе... каждая ячейка содержит большое количество значений, формул, и на каждый вариант есть ССЫЛКИ из других ячеек (можно использовать некоторое подобие 3d-ссылок), и есть соответствующая НАВИГАЦИЯ, и есть соответствующие ФОРМУЛЫ РАБОЧЕГО ЛИСТА...

Я, конечно, извиняюсь, но ДЛЯ МЕНЯ всё это вами сказанное - набор русских слов, каждое из которых в отдельности понятно, а в совокупности …
Это для меня слишком уж высокие материи чтобы в них разбираться и хоть что-нибудь советовать или высказывать ИМХО.
Я больше практик чем теоретик.
Вам бы с вашей теоретической базой к завявшей дискуссии Простая метрика сходства текстовых строк (Нечеткий поиск - варианты решения) подключиться... Может, тогда довели бы её до финальной "конфетки".



С уважением,
Алексей
MS Excel 2003 - the best!!!
 
Ответить
Сообщение
Quote (v__step)
Вплотную к этим вопросам подходят еще один - создание простого и наглядного командного ЯЗЫКА для листа, распознаваемого простыми макросами

Есть еще одна родственная проблема - вариантность вычислений (возможности сценариев ограничены, а интерфейс предельно слаб). Никак не могу отделаться от впечатления, что рабочие листы Excel должны стать не 2-х мерными, а как минимум, 3-х мерными, и 3-е измерение я бы сразу стал использовал как пространство вариантов...
(я не имею в виду 3d-формулы с единственной возможностью 3d-итогов (сумма, максимум, среднее, и т.д.))

Мне даже больше по душе радикальное расширение вариантности ячеек (где-то рядом, но не совсем то же)
Только представьте себе... каждая ячейка содержит большое количество значений, формул, и на каждый вариант есть ССЫЛКИ из других ячеек (можно использовать некоторое подобие 3d-ссылок), и есть соответствующая НАВИГАЦИЯ, и есть соответствующие ФОРМУЛЫ РАБОЧЕГО ЛИСТА...

Я, конечно, извиняюсь, но ДЛЯ МЕНЯ всё это вами сказанное - набор русских слов, каждое из которых в отдельности понятно, а в совокупности …
Это для меня слишком уж высокие материи чтобы в них разбираться и хоть что-нибудь советовать или высказывать ИМХО.
Я больше практик чем теоретик.
Вам бы с вашей теоретической базой к завявшей дискуссии Простая метрика сходства текстовых строк (Нечеткий поиск - варианты решения) подключиться... Может, тогда довели бы её до финальной "конфетки".

Автор - Alex_ST
Дата добавления - 31.10.2011 в 12:58
v__step Дата: Понедельник, 31.10.2011, 14:45 | Сообщение № 26
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 225
Репутация: 27 ±
Замечаний: 0% ±

Боженьки мои, теперь моя очередь испугаться
Пожалуйста, не обращайте внимание на заумное
Если заумное, значит точно глупое
Я много раз редактировал свое сообщение и видать, довел до "полного совершенства"

Вы не обращайте внимания, это была попытка высказать в нескольких словах то, что в них ну никак не помещается
Наверное, неудачная

Но если я Вас хотя бы немного заинтересовал, то со временем я обещаю изложить все так хорошо, что и сам, наконец, разберусь smile

Вторая попытка высказаться: Если мы с Вами выживем после чистилки, то дальше обязательно будет что-нибудь интересное
Я тоже практик, и ответы на на эти вопросы мне нужны каждый день smile
За приглашение к участию в дискуссии спасибо, но сначала надо хотя бы немного дать дыхание чистилке
Она еще очень маленькая, наивная и болеет детскими болезнями


С уважением, Владимир

Сообщение отредактировал v__step - Понедельник, 31.10.2011, 15:32
 
Ответить
СообщениеБоженьки мои, теперь моя очередь испугаться
Пожалуйста, не обращайте внимание на заумное
Если заумное, значит точно глупое
Я много раз редактировал свое сообщение и видать, довел до "полного совершенства"

Вы не обращайте внимания, это была попытка высказать в нескольких словах то, что в них ну никак не помещается
Наверное, неудачная

Но если я Вас хотя бы немного заинтересовал, то со временем я обещаю изложить все так хорошо, что и сам, наконец, разберусь smile

Вторая попытка высказаться: Если мы с Вами выживем после чистилки, то дальше обязательно будет что-нибудь интересное
Я тоже практик, и ответы на на эти вопросы мне нужны каждый день smile
За приглашение к участию в дискуссии спасибо, но сначала надо хотя бы немного дать дыхание чистилке
Она еще очень маленькая, наивная и болеет детскими болезнями

Автор - v__step
Дата добавления - 31.10.2011 в 14:45
Alex_ST Дата: Понедельник, 31.10.2011, 15:44 | Сообщение № 27
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3208
Репутация: 609 ±
Замечаний: 0% ±

2003
Володя!
В версии 008 жуткий БАГ:
строки кода с переносом строки типа:[vba]
Код
         If Application.CountIf(.Range(nmVendSpis), Target) = 0 _
               Then Target.Value = AddToSpisok(Target.Value, nmVendSpis, "производителей")
[/vba]
превращаются в [vba]
Код
         If Application.CountIf(.Range(nmVendSpis), Target) = 0 _

               Then Target.Value = AddToSpisok(Target.Value, nmVendSpis, "производителей")
[/vba]
Т.е. стринг типа "текст начала строки кода"-"пробел"-"подчёркивание"-"перевод строки"-"текст продолжения строки кода" транскодируется в "текст начала строки кода"-"пробел"-"подчёркивание"-"перевод строки"-"перевод строки"-"текст продолжения строки кода", что, естественно, абсолютно недопустимо!



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


Сообщение отредактировал Alex_ST - Понедельник, 31.10.2011, 15:46
 
Ответить
СообщениеВолодя!
В версии 008 жуткий БАГ:
строки кода с переносом строки типа:[vba]
Код
         If Application.CountIf(.Range(nmVendSpis), Target) = 0 _
               Then Target.Value = AddToSpisok(Target.Value, nmVendSpis, "производителей")
[/vba]
превращаются в [vba]
Код
         If Application.CountIf(.Range(nmVendSpis), Target) = 0 _

               Then Target.Value = AddToSpisok(Target.Value, nmVendSpis, "производителей")
[/vba]
Т.е. стринг типа "текст начала строки кода"-"пробел"-"подчёркивание"-"перевод строки"-"текст продолжения строки кода" транскодируется в "текст начала строки кода"-"пробел"-"подчёркивание"-"перевод строки"-"перевод строки"-"текст продолжения строки кода", что, естественно, абсолютно недопустимо!

Автор - Alex_ST
Дата добавления - 31.10.2011 в 15:44
v__step Дата: Понедельник, 31.10.2011, 16:55 | Сообщение № 28
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 225
Репутация: 27 ±
Замечаний: 0% ±

Ой, буду смотреть

Большое спасибо!
Проверил - этот баг есть живет во всех версиях, в том числе и тех, что Вы не видели - самых старых


С уважением, Владимир

Сообщение отредактировал v__step - Понедельник, 31.10.2011, 17:07
 
Ответить
СообщениеОй, буду смотреть

Большое спасибо!
Проверил - этот баг есть живет во всех версиях, в том числе и тех, что Вы не видели - самых старых

Автор - v__step
Дата добавления - 31.10.2011 в 16:55
v__step Дата: Вторник, 01.11.2011, 10:16 | Сообщение № 29
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 225
Репутация: 27 ±
Замечаний: 0% ±

Доброе утро, Леша!
Кажется, своевал
Это было самоуправство компилятора VBA
Он без разрешения добавлял пустую строку, если предыдущая заканчивалась " _"
Мне уже приходилось сталкиваться с подобной бедой...
Пришлось хитрить (благо опыт обмана компилятора есть)

Побывал в "метрическом" разделе
Если можно, несколько слов - для чего это нужно, и что посмотреть в первую очередь
Только толку от меня наверное, не будет - Вы ушли далеко,... куда-то за горизонт
К сообщению приложен файл: CleanerV009.zip (62.2 Kb)


С уважением, Владимир

Сообщение отредактировал v__step - Вторник, 01.11.2011, 10:59
 
Ответить
СообщениеДоброе утро, Леша!
Кажется, своевал
Это было самоуправство компилятора VBA
Он без разрешения добавлял пустую строку, если предыдущая заканчивалась " _"
Мне уже приходилось сталкиваться с подобной бедой...
Пришлось хитрить (благо опыт обмана компилятора есть)

Побывал в "метрическом" разделе
Если можно, несколько слов - для чего это нужно, и что посмотреть в первую очередь
Только толку от меня наверное, не будет - Вы ушли далеко,... куда-то за горизонт

Автор - v__step
Дата добавления - 01.11.2011 в 10:16
Alex_ST Дата: Вторник, 01.11.2011, 12:15 | Сообщение № 30
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3208
Репутация: 609 ±
Замечаний: 0% ±

2003
Привет, Володя.
Нечёткий поиск очень удобен для фильтрации данных, получаемых из разных источников и вводимых в ручную в разное время разными людьми, которые считают, что "проспект Маршала Жукова" - это абсолютно то же самое, что и "Жукова маршала проспект".
Пример реализации нечёткого поиска - поиск Google, который не зависит от перемены порядка слов в поисковом запросе, а кроме допускается некоторое количество ошибок/опечаток (перестановка двух соседних букв в слове, слипание слов и т.п.)
А версию 009 сейчас попробую попробовать biggrin .
Если смогу, отпишусь



С уважением,
Алексей
MS Excel 2003 - the best!!!
 
Ответить
СообщениеПривет, Володя.
Нечёткий поиск очень удобен для фильтрации данных, получаемых из разных источников и вводимых в ручную в разное время разными людьми, которые считают, что "проспект Маршала Жукова" - это абсолютно то же самое, что и "Жукова маршала проспект".
Пример реализации нечёткого поиска - поиск Google, который не зависит от перемены порядка слов в поисковом запросе, а кроме допускается некоторое количество ошибок/опечаток (перестановка двух соседних букв в слове, слипание слов и т.п.)
А версию 009 сейчас попробую попробовать biggrin .
Если смогу, отпишусь

Автор - Alex_ST
Дата добавления - 01.11.2011 в 12:15
Alex_ST Дата: Вторник, 01.11.2011, 17:02 | Сообщение № 31
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3208
Репутация: 609 ±
Замечаний: 0% ±

2003
Володя!
Я обнаружил гадкий баг в версии 009:
Взял книгу, в которой CodeName листов идут с пропуском: Лист1 (Лист-1), Лист2 (Лист-2), Лист4 (Лист-4)
(в скобках - их имена точно так же как в окне VBE)
На каждом листе написАл маленький скриптик (сам увидишь в примере)
После "обезжиривания" получил без пропуска идущие CodeName с сохраненными старыми Name:
Лист1 (Лист-1), Лист2 (Лист-2), Лист3 (Лист-4) и ещё новый твой Лист4 (Защита имён)

Так вот: код с Лист3 (Лист-4) пропал!
Наверное, потому что у тебя где-то идёт привязка кода к CodeName , а раз такого CodeName в "толстой" книге не было, то и в "худой" на листе пусто.

Вообще нельзя изменять CodeName ! Многие по нему обращаются к листам книги для защиты работоспособности программы при переименовании пользователями листов или смене их порядка!
Ведь согласись, что переименовать лист может даже блондинка-секретарша, а чтобы сменить CodeName нужно лезть в VBE!
К сообщению приложен файл: Example_not_con.xls (34.5 Kb)



С уважением,
Алексей
MS Excel 2003 - the best!!!
 
Ответить
СообщениеВолодя!
Я обнаружил гадкий баг в версии 009:
Взял книгу, в которой CodeName листов идут с пропуском: Лист1 (Лист-1), Лист2 (Лист-2), Лист4 (Лист-4)
(в скобках - их имена точно так же как в окне VBE)
На каждом листе написАл маленький скриптик (сам увидишь в примере)
После "обезжиривания" получил без пропуска идущие CodeName с сохраненными старыми Name:
Лист1 (Лист-1), Лист2 (Лист-2), Лист3 (Лист-4) и ещё новый твой Лист4 (Защита имён)

Так вот: код с Лист3 (Лист-4) пропал!
Наверное, потому что у тебя где-то идёт привязка кода к CodeName , а раз такого CodeName в "толстой" книге не было, то и в "худой" на листе пусто.

Вообще нельзя изменять CodeName ! Многие по нему обращаются к листам книги для защиты работоспособности программы при переименовании пользователями листов или смене их порядка!
Ведь согласись, что переименовать лист может даже блондинка-секретарша, а чтобы сменить CodeName нужно лезть в VBE!

Автор - Alex_ST
Дата добавления - 01.11.2011 в 17:02
v__step Дата: Вторник, 01.11.2011, 17:43 | Сообщение № 32
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 225
Репутация: 27 ±
Замечаний: 0% ±

Леша, не обижайся, но я уже исправил!

Огромное спасибо за поддержку
Тебе +++++, а мне -----

Ошибка, конечно, заключалась в том, что я не ввел уникальные для обеих книг CodeName непосредственно перед переименованием. Сейчас добавил промежуточное переименование, и ... проверяй!
Но разреши сразу категорически возразить: Я меняю CodeName не по прихоти, а потому, что это возможно в оригинале, и это может быть использовано в коде оригинала!

Рекомендация правильная, но она не ко мне, а к автору оригинала!
Вообще, не так этот черт страшен, потому что я переименовываю модули в самом начале, а потом все обращения идут не по индексам, а по именам
Работа со встроенными модулями - моя головная боль и гордость одновременно: я не нашел аналогов в Inete, в том числе у Боуви (ссылку на его утилиту я поместил на листе справки, если у тебя ее нет, обязательно скачай, это безупречная работа)

Я продолжаю мучить тебя текущими версиями... потерпи еще немножко...
К сообщению приложен файл: 9880910.zip (62.2 Kb)


С уважением, Владимир

Сообщение отредактировал v__step - Вторник, 01.11.2011, 18:55
 
Ответить
СообщениеЛеша, не обижайся, но я уже исправил!

Огромное спасибо за поддержку
Тебе +++++, а мне -----

Ошибка, конечно, заключалась в том, что я не ввел уникальные для обеих книг CodeName непосредственно перед переименованием. Сейчас добавил промежуточное переименование, и ... проверяй!
Но разреши сразу категорически возразить: Я меняю CodeName не по прихоти, а потому, что это возможно в оригинале, и это может быть использовано в коде оригинала!

Рекомендация правильная, но она не ко мне, а к автору оригинала!
Вообще, не так этот черт страшен, потому что я переименовываю модули в самом начале, а потом все обращения идут не по индексам, а по именам
Работа со встроенными модулями - моя головная боль и гордость одновременно: я не нашел аналогов в Inete, в том числе у Боуви (ссылку на его утилиту я поместил на листе справки, если у тебя ее нет, обязательно скачай, это безупречная работа)

Я продолжаю мучить тебя текущими версиями... потерпи еще немножко...

Автор - v__step
Дата добавления - 01.11.2011 в 17:43
Alex_ST Дата: Вторник, 01.11.2011, 21:42 | Сообщение № 33
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3208
Репутация: 609 ±
Замечаний: 0% ±

2003
Володя, завтра, наверное ближе к обеду (если будет время, конечно), помучаю на примерах твою очередную версию. Десяточка, кажется? biggrin
Да и пора бы, наверное, в код заглянуть... А вдруг и я что-нибудь хитрое, чему на форумах научился, подсказать смогу?
Надо будет посмотреть, как ты работаешь с объектами VBProject... У меня есть несколько толковых примеров.

На ссылку на утилиту Боуви, честно признаюсь, даже не посмотрел... shy Решил, что это всем известный VBACodeCleaner? на который всё равно нет ни открытого кода, ни описания.
Надо будет качнуть, ознакомиться.
Уокенбах-то - это, конечно, супер-книга-учебник для программистов в VBA! И он у меня, естественно, есть.



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


Сообщение отредактировал Alex_ST - Вторник, 01.11.2011, 21:45
 
Ответить
СообщениеВолодя, завтра, наверное ближе к обеду (если будет время, конечно), помучаю на примерах твою очередную версию. Десяточка, кажется? biggrin
Да и пора бы, наверное, в код заглянуть... А вдруг и я что-нибудь хитрое, чему на форумах научился, подсказать смогу?
Надо будет посмотреть, как ты работаешь с объектами VBProject... У меня есть несколько толковых примеров.

На ссылку на утилиту Боуви, честно признаюсь, даже не посмотрел... shy Решил, что это всем известный VBACodeCleaner? на который всё равно нет ни открытого кода, ни описания.
Надо будет качнуть, ознакомиться.
Уокенбах-то - это, конечно, супер-книга-учебник для программистов в VBA! И он у меня, естественно, есть.

Автор - Alex_ST
Дата добавления - 01.11.2011 в 21:42
v__step Дата: Вторник, 01.11.2011, 22:53 | Сообщение № 34
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 225
Репутация: 27 ±
Замечаний: 0% ±

Это 91, а десятку постараюсь подготовить к утру
Да, это мой старый добрый друг, всем известный VBACodeCleaner
Код закрыт, но несложно убедиться в том, что эта программа игнорирует встроенные модули
Уокенбах - мой учитель...
На самом деле, автор идеи неизвестен, и изложена она во многих источниках

Конечно, код давно ждет тебя!


С уважением, Владимир

Сообщение отредактировал v__step - Вторник, 01.11.2011, 23:51
 
Ответить
СообщениеЭто 91, а десятку постараюсь подготовить к утру
Да, это мой старый добрый друг, всем известный VBACodeCleaner
Код закрыт, но несложно убедиться в том, что эта программа игнорирует встроенные модули
Уокенбах - мой учитель...
На самом деле, автор идеи неизвестен, и изложена она во многих источниках

Конечно, код давно ждет тебя!

Автор - v__step
Дата добавления - 01.11.2011 в 22:53
Alex_ST Дата: Среда, 02.11.2011, 08:25 | Сообщение № 35
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3208
Репутация: 609 ±
Замечаний: 0% ±

2003
Quote (v__step)
…VBACodeCleaner … игнорирует встроенные модули

eek cry
Испугал до смерти!
Поясни, плиз, что ты имел в виду? Это какие модули?
Я несколько раз VBACodeCleaner'ом пользовался и никаких косяков в "обезжиренных" программах не заметил.



С уважением,
Алексей
MS Excel 2003 - the best!!!
 
Ответить
Сообщение
Quote (v__step)
…VBACodeCleaner … игнорирует встроенные модули

eek cry
Испугал до смерти!
Поясни, плиз, что ты имел в виду? Это какие модули?
Я несколько раз VBACodeCleaner'ом пользовался и никаких косяков в "обезжиренных" программах не заметил.

Автор - Alex_ST
Дата добавления - 02.11.2011 в 08:25
v__step Дата: Среда, 02.11.2011, 10:19 | Сообщение № 36
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 225
Репутация: 27 ±
Замечаний: 0% ±

Пожалуйста!
Создай новую книгу, добавь код в любой из встроенных модулей (не создавай новые модули) и запусти VBACodeCleaner - книга даже не появится в списке VBACodeCleanerа
Теперь добавь модуль, напиши пару строк и повторно вызови VBACodeCleaner - он заработает
Мне надо было написать не "игнорирует", а "не обрабатывает".

Доброе утро! smile
Выкладываю десятку с надеждой на магическую силу этого числа

Вижу серьезные проблемы с копированием объектов и самокоррекцией высоты строк после удаления лишнего
Не доволен копированием с группировкой
Возможно, придется перейти к пошаговому копированию + специальной вставке, хотя задумывалось как копирование + обычная вставка

Думаю, что впереди еще большая работа, но для начала желательно подвести предварительные итоги и наметить какой-то план
Пока жду результатов тестирования
К сообщению приложен файл: CleanerV010.zip (65.7 Kb)


С уважением, Владимир

Сообщение отредактировал v__step - Среда, 02.11.2011, 10:41
 
Ответить
СообщениеПожалуйста!
Создай новую книгу, добавь код в любой из встроенных модулей (не создавай новые модули) и запусти VBACodeCleaner - книга даже не появится в списке VBACodeCleanerа
Теперь добавь модуль, напиши пару строк и повторно вызови VBACodeCleaner - он заработает
Мне надо было написать не "игнорирует", а "не обрабатывает".

Доброе утро! smile
Выкладываю десятку с надеждой на магическую силу этого числа

Вижу серьезные проблемы с копированием объектов и самокоррекцией высоты строк после удаления лишнего
Не доволен копированием с группировкой
Возможно, придется перейти к пошаговому копированию + специальной вставке, хотя задумывалось как копирование + обычная вставка

Думаю, что впереди еще большая работа, но для начала желательно подвести предварительные итоги и наметить какой-то план
Пока жду результатов тестирования

Автор - v__step
Дата добавления - 02.11.2011 в 10:19
Alex_ST Дата: Среда, 02.11.2011, 15:47 | Сообщение № 37
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3208
Репутация: 609 ±
Замечаний: 0% ±

2003
Володя,
что первое бросилось в глаза:
- у всех Shapes на листе после обработки вызываемые по ПКМ "Формат"-"Свойства" сбросились в состояние по умолчанию - "Перемещать и изменять объект вместе с ячейками", однако свойство "Выводить объект на печать", расположенное на той же вкладке, сохранилось.
- какая-то чепуха с переносом заданных в оригинале условий автофильтрации: каждое условие фильтрации копируется в условие автофильтра соседней правой ячейки ЕСЛИ ОНО НЕ ЗАДАНО.
Например:
- в столбцах A:H включен автофильтр.
- в столбце А - условие не задано
- в столбце В задано условие "содержит" и стринг "Вася"
- в столбцах C...D - условие не задано
- в столбце E - условие "равно" и значение "0"
- в столбцах F...H - условие не задано
после обработки окажется:
- в столбце А - условие не задано
- в столбцах В...D задано условие "содержит" и стринг "Вася" ( т.е. условие из В распространилось на бывшие пустыми C...D)
- в столбцах Е...Н - условие "равно" и значение "0" ( т.е. условие из Е распространилось на бывшие пустыми F...H)

Но это, конечно, можно и оставить на потом, т.к. фильтр в конце-концов и выставить по новой можно.



С уважением,
Алексей
MS Excel 2003 - the best!!!
 
Ответить
СообщениеВолодя,
что первое бросилось в глаза:
- у всех Shapes на листе после обработки вызываемые по ПКМ "Формат"-"Свойства" сбросились в состояние по умолчанию - "Перемещать и изменять объект вместе с ячейками", однако свойство "Выводить объект на печать", расположенное на той же вкладке, сохранилось.
- какая-то чепуха с переносом заданных в оригинале условий автофильтрации: каждое условие фильтрации копируется в условие автофильтра соседней правой ячейки ЕСЛИ ОНО НЕ ЗАДАНО.
Например:
- в столбцах A:H включен автофильтр.
- в столбце А - условие не задано
- в столбце В задано условие "содержит" и стринг "Вася"
- в столбцах C...D - условие не задано
- в столбце E - условие "равно" и значение "0"
- в столбцах F...H - условие не задано
после обработки окажется:
- в столбце А - условие не задано
- в столбцах В...D задано условие "содержит" и стринг "Вася" ( т.е. условие из В распространилось на бывшие пустыми C...D)
- в столбцах Е...Н - условие "равно" и значение "0" ( т.е. условие из Е распространилось на бывшие пустыми F...H)

Но это, конечно, можно и оставить на потом, т.к. фильтр в конце-концов и выставить по новой можно.

Автор - Alex_ST
Дата добавления - 02.11.2011 в 15:47
v__step Дата: Среда, 02.11.2011, 16:52 | Сообщение № 38
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 225
Репутация: 27 ±
Замечаний: 0% ±

Я уже второй час как на иголках - жду чего-то убийственного

Пока живем
А ведь раньше я небезуспешно не менял привязки к ячейкам (до того, как перешел к группировке, свойства восстанавливались программно)
Это лишний камень в огород группировки

Спасибо за автофильтр - там скорее всего ничего страшного - я посмотрю
Трудней будет исправить другой глюк (для фильтров вида top10 объектная система выдает ломаную формулу)
Давай, мучай ее дальше, не жалей!


С уважением, Владимир
 
Ответить
СообщениеЯ уже второй час как на иголках - жду чего-то убийственного

Пока живем
А ведь раньше я небезуспешно не менял привязки к ячейкам (до того, как перешел к группировке, свойства восстанавливались программно)
Это лишний камень в огород группировки

Спасибо за автофильтр - там скорее всего ничего страшного - я посмотрю
Трудней будет исправить другой глюк (для фильтров вида top10 объектная система выдает ломаную формулу)
Давай, мучай ее дальше, не жалей!

Автор - v__step
Дата добавления - 02.11.2011 в 16:52
v__step Дата: Среда, 02.11.2011, 17:07 | Сообщение № 39
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 225
Репутация: 27 ±
Замечаний: 0% ±

Кажется, автофильтр подправил, по крайней мере тест на "Васю" прошел
С ним есть еще одна небольшая проблема - для выбранного 1 значения он заменяет значение на формулу
Самоуправство XL, что поделаешь... Я только исправно переношу критерии фильтрации (а они уже изменены)
Но это мы исправим...
Не было бы серьезных замечаний...
К сообщению приложен файл: 0459335.zip (63.0 Kb)


С уважением, Владимир

Сообщение отредактировал v__step - Среда, 02.11.2011, 18:13
 
Ответить
СообщениеКажется, автофильтр подправил, по крайней мере тест на "Васю" прошел
С ним есть еще одна небольшая проблема - для выбранного 1 значения он заменяет значение на формулу
Самоуправство XL, что поделаешь... Я только исправно переношу критерии фильтрации (а они уже изменены)
Но это мы исправим...
Не было бы серьезных замечаний...

Автор - v__step
Дата добавления - 02.11.2011 в 17:07
Alex_ST Дата: Среда, 02.11.2011, 17:21 | Сообщение № 40
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3208
Репутация: 609 ±
Замечаний: 0% ±

2003
Володя,
сегодня уже больше насиловать программу не смогу - скоро выхожу с работы по тайм-ауту biggrin , а дома уж не до того.
Так что пытай дальше сам или жди моих результатов до завтрашнего ближе к обеду...
К стати, по поводу группировки-разгруппировки я просто забыл, что знал об этой бяке: не только Z-order сбрасывает, но и свойства формата...

P.S. Заглянул одним глазом в код …Ты монстр!
А гаденький вопросик можно? "Как на счёт указания будущему юзвергу, что надо разрешать не только макросы, но и доступ к проекту VBA?"
Я сам это у себя давно включил и успешно забыл... А ведь по умолчанию доверия нет даже при разрешённых макросах.



С уважением,
Алексей
MS Excel 2003 - the best!!!
 
Ответить
СообщениеВолодя,
сегодня уже больше насиловать программу не смогу - скоро выхожу с работы по тайм-ауту biggrin , а дома уж не до того.
Так что пытай дальше сам или жди моих результатов до завтрашнего ближе к обеду...
К стати, по поводу группировки-разгруппировки я просто забыл, что знал об этой бяке: не только Z-order сбрасывает, но и свойства формата...

P.S. Заглянул одним глазом в код …Ты монстр!
А гаденький вопросик можно? "Как на счёт указания будущему юзвергу, что надо разрешать не только макросы, но и доступ к проекту VBA?"
Я сам это у себя давно включил и успешно забыл... А ведь по умолчанию доверия нет даже при разрешённых макросах.

Автор - Alex_ST
Дата добавления - 02.11.2011 в 17:21
Мир MS Excel » Вопросы и решения » Готовые решения » Программа для очистки рабочей книги (Автоматич. удал. мусора (метод предлож. Дж. Уокенбахом))
  • Страница 2 из 7
  • «
  • 1
  • 2
  • 3
  • 4
  • 6
  • 7
  • »
Поиск:

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