- обработка в режиме "Разметка страницы" теперь по времени занимает столько же, что и в "Обычном режиме". Раньше это длилось значительно дольше, почти в 3 раза; - вместо кнопки на панели задач, функция интегрирована в меню. Найти ее просто, она располагается рядом со "стандартным" автоподбором (excel 2003); - исправлены потенциальные ошибки.
Чему "мы" научились за это время:
а) подбирать высоту строк с: - объединенными ячейками - обычным ячейками - теми и другими в одной строке (по максимальной высоте) б) не отображать скрытые строки (если таковые имеются). "Стандартный" автоподбор на это не способен в) обзавелись прогресс-баром, дабы можно было отследить ход выполнения задачи на объемных документах
Наши недостатки: - "халтурим" при любой защите листа, книги, общей книги - делаем свое дело дольше, чем стандартный автоподбор
В архиве помимо надстройки присутствует функция с открытым кодом (почти идентичным надстройке), которую разработчики могут использовать в своих проектах для решения аналогичных задач.
p.s.: при установке новой версии надстройки, предыдущую желательно деинсталировать.
{quote}{login=Вован}{date=18.10.2011 01:37}{thema=}{post}ексель 2007. В параметры Exel -> Надстройки-> автоподбор высоты отсутствует, но на ленте в надстройках есть автоподбор есть!???{/post}{/quote}
кнопка "Office"-> параметры Exel -> Надстройки -> Управление (Надстройки Exel) перейти -> обзор После установки на панели Exelпоявится закладка "Надстройки " в ней "Пользовательский автоподбор высоты"
Те реализации автоподбора, кот. я выкладывал выше, содержат ряд недостатков. Каких, говорить, не буду : ) Ссылку на последнюю стабильную рабочую версию я также давал.
Чебурашка стал символом олимпийских игр. А чего достиг ты? Тишина - самый громкий звук
я предложил решение для разработчиков, а не для пользователей. Т.е. разрабатываю некую форму Шаблона, что бы потом передать пользователям. Для меня так же имеется приоритет, что бы пользователи могли заполнять только определенные ячейки, а не все.
так же хочу поделиться... вот добавил на Лист1
Private Sub Worksheet_Change(ByVal Target As Range) UserAutoFit ActiveSheet.UsedRange 'название функции из версии nerv_Function_UserAutoFit_3.9.xls End Sub
автоматически позволит срабатывание функции Автоподбора высоты строк, только в тех ячейка, в которые внесли изменения.
Допустим, вариант со снятием и установкой защиты листа работает. А если кто поставит защиту общей книги или включит общий доступ?
>так же хочу поделиться... Я бы не советовал так делать. У Вас будет пересчитываться вся используемая область листа. На больших объемах будет тормозить.
Чебурашка стал символом олимпийских игр. А чего достиг ты? Тишина - самый громкий звук
Я как полный нуль в макросах хотела спросить у многоуважаемых гуру...возможно ли задать условие делать автоподбор высоты строк в таблице, в кот. заранее известно расположение первой строки, но не известно окончательное кол-во строк? Если честно мне надо в готовый макрос, подсказанный на этом чудесном форуме, добавить такое условие. Макрос из темы http://www.planetaexcel.ru/forum.php?thread_id=16778, он чудным образом большой массив данных разбивает на отдельные листы по образцу и в результате получаются заполненные автоматически таблички, но вот высота строк в них не регулируется, а поскольку у меня наименования бывает длинное часто часть просто скрыта. Т.е. надо со строки 15 и по конец таблицы, но не дальше делать вручную регулировку высоты строк...не очень удобно :(
http://excelvba.ru/programmes/AutoFit >возможно ли задать условие делать автоподбор высоты строк в таблице, в кот. заранее известно расположение первой строки, но не известно окончательное кол-во строк? выделяете весь лист и подбираете
Чебурашка стал символом олимпийских игр. А чего достиг ты? Тишина - самый громкий звук
nerv, а нельзя увидеть данный файл в открытом виде? Желательно выложить :) а то при открытии надстройки уверенно пишет "project is unviewable" Так понимаю, постарался защитить свой файл, и получилось неплохо :))
nerv, мне на самом деле хотелось уточнить один момент. Как можно сделать, что бы автоподбор работал к конкретной ячейке, а не ко всему использованному диапозону (не через надскройку)?
немного дописал, UserAutoFit ActiveSheet.UsedRange.Range("CY46")
уважаемый Nerv, спасибо Вам огромное за надстройку она просто незаменима в работе, но вот в одном случае почему-то работает некорректно. не могли бы Вы сказать что не так в примере или может подредактировать надстройку?
не работает если в выделенном для автоподбора диапазоне есть скрытая строка
{quote}{login=GIG_ant}{date=01.02.2011 03:33}{thema=Автоподбор высоты строк в объединенных ячейках}{post}Добрый день, уважаемые ! Собственно вопрос: есть файлик в нем куча строк с объединенными ячейками, в этих строках куча текста и видна в каждой строке только часть текста. Соответственно автоподбор высоты строк на объединенных не работает, а нужно увидеть весь текст и распечатать. Пока что я впал в ступор и не могу ничего придумать. Буду признателен за участие в решении этого вопроса. Наглядности в файле.{/post}{/quote} подготовка для печати вордом разметьте c:\rab\ Sub Макрос120322() Dim j1, j2 Dim s1, s2
maG, уберите из строки UsedRange, т.е. должно получиться ActiveSheet.Range("CY46") Если есть необходимость, можете через запятую задать несколько ячеек: ActiveSheet.Range("CY46,B2") и т.д. <= 30
{quote}{login=nerv}{date=22.03.2012 05:27}{thema=}{post} Максим, у меня работает нормально. Я уже устал повторять, что последняя версия здесь - http://excelvba.ru/programmes/AutoFit{/post}{/quote}
да, действительно у меня 3.9 была. А 4.2 работает корректно!
Все равно появляются небольшие косяки. Высоту иногда выстраивает меньше, чем надо. И не всегда все содержимое ячейки. Буду думать и импровизировать, как можно уйти от таких ситуаций)
Если конкретно брать ячейку CY46, 1. В ячейке прописываем текст - привет1 привет2 привет3 привет4 привет5 привет6 2. Запускаем Автоподбор на ячейку CY46 3. Меняется высота и ведем только - привет1 привет2 привет3 привет4
Оставшейся текст - привет5 привет6 остается в зоне невидимости :(
Благодарю за проявленную клиентоориентированность и инициативу оказать помощь!)))
<EM><STRONG>Файл удален</STRONG> - велик размер - [<STRONG>МОДЕРАТОРЫ</STRONG>]</EM>
алгоритм надстройки подбора высоты основан на возможности экселя автоматически подбирать высоту. Если ячейка обычная, высота подбирается стандартным способом, если нет, она разбивается, подбирается высота, а затем вычисляется необходимая высота за вычетом объединенных строк, затем ячейка опять объединяется. Это в двух словах.
Чебурашка стал символом олимпийских игр. А чего достиг ты? Тишина - самый громкий звук