Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Страницы: 1 2 3 4 След.
RSS
Автоподбор высоты строк в объединенных ячейках
 
Добрый день, уважаемые !  
Собственно вопрос: есть файлик в нем куча строк с объединенными ячейками, в этих строках куча текста и видна в каждой строке только часть текста. Соответственно автоподбор высоты строк на объединенных не работает, а нужно увидеть весь текст и распечатать. Пока что я впал в ступор и не могу ничего придумать. Буду признателен за участие в решении этого вопроса. Наглядности в файле.
Редко но метко ...
 
Попробуйте не автоподбор, а ширину строки (не более 409).
 
{quote}{login=vikttur}{date=01.02.2011 03:37}{thema=}{post}Попробуйте не автоподбор, а ширину строки (не более 409).{/post}{/quote}  
 
не очень понял, можно поподробней плз
Редко но метко ...
 
Автоподбор же как-то хотели сделать?  
Меню Формат-Строка-Высота.
 
принцип такой:  
Private Sub Worksheet_Change(ByVal Target As Range)  
Dim cell As Range  
Dim mrg As Double  
Dim rh As Double  
Dim rr As Range  
Dim iLastColumn As Long  
If Not Target.MergeCells Then Exit Sub  
If Not Intersect(Target, Range("A3:J300")) Is Nothing Then  
iLastColumn = Cells(1, Columns.Count).End(xlToLeft).Column + 2  
On Error Resume Next  
Set rr = Target.MergeArea  
For Each cell In rr  
mrg = mrg + Columns(cell.Column).ColumnWidth  
Next  
 
   Columns(iLastColumn).ColumnWidth = mrg  
   Application.ScreenUpdating = False  
   With Cells(Target.Row, iLastColumn)  
       .HorizontalAlignment = xlLeft  
       .VerticalAlignment = xlTop  
       .WrapText = True  
   End With  
Cells(Target.Row, iLastColumn) = Target.Value  
  Rows(Target.Row).Rows.AutoFit  
  rh = Rows(Target.Row).RowHeight  
Application.EnableEvents = False  
Cells(Target.Row, iLastColumn).ClearContents  
Rows(Target.Row).RowHeight = rh  
Application.EnableEvents = True  
   Application.ScreenUpdating = True  
End If  
End Sub
 
{quote}{login=vikttur}{date=01.02.2011 03:47}{thema=}{post}Автоподбор же как-то хотели сделать?  
Меню Формат-Строка-Высота.{/post}{/quote}  
То есть в ручную подбирать для каждой строки ? К сожалению этот вариант не подходит, я мышку об стол сотру ). А другого варианта нет ? Макросом например.
Редко но метко ...
 
Пожалейте зверька :)  
Не вручную, а по максимальной ширине текста.  
Макрос уже предложили.
 
Ключевое слово - автоБодбор :)  
http://www.planetaexcel.ru/forum.php?thread_id=19253  
 
Ух ты!  
=12345=
 
То vikttur: Или у меня сегодня день неудачный, или я все равно не пойму каким макаром вы предлагаете подобрать нужную высоту строки.  
 
То Noname (который прислал макрос) : если возможно вкратце подскажите как мне этот макрос приделать под мой пример, а то я попробовал а он виснет (.
Редко но метко ...
 
Я и не говорил подбирать. Предложил вариант (корявый, не спорю) - для всех выставить минимально возможную для отражения всего текста максимальной длины.  
Появились более удобные варианты. И это есть хорошо.
 
или так: попробуйте изменить ячейку(добавить пробел, например)  
 
ps  88666
 
{quote}{login=Казанский}{date=01.02.2011 04:02}{thema=}{post}Ключевое слово - автоБодбор :)  
{/post}{/quote}  
 
А я как правильный искал автоПодбор! ;-)  
Спасибо за ссылку, помогло.  
 
Всем остальным спасибо за участие.
Редко но метко ...
 
Ух ты! Это вообще красота!
 
даже автоподбор не любит Alt+Enter
 
{quote}{login=}{date=01.02.2011 04:10}{thema=}{post}или так: попробуйте изменить ячейку(добавить пробел, например){/post}{/quote}  
<Ух ты! Это вообще красота!>  
Накололся :(  
Я то сначала подумал, что это обычное поведение Excel, стоит только войти в ячейку.
 
Как установить: Скачать, распаковать архив. Открыть Excel, в меню "Сервис", выбрать пункт Надстройки, нажать кнопку обзор, указать путь к файлу. Закрыть Excel. После правильной установки надстройки на панели инструментов, должна появиться кнопка "Автоподбор высоты строк".  
 
Как пользоваться: так же, как и обычным подбором высоты строк.  
 
Цель надстройки: забыть о том, что существует какая-то разница между подбором строк с объединенными или обычными ячейками.  
 
 
Тем, кто будет пользоваться: в случае обнаружения ошибки, просьба написать по адресу: nerv-net@yandex.ru. Так же принимаются замечания и предложения : )
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук


https://github.com/nervgh
 
Без комментариев...
 
Большое спасибо за пример! Такой случай я не рассматривал, хотя в голове уже вертится приблизительный алгоритм его решения. Посмотрим, удастся ли его воплотить : )  
 
По вашему примеру: вариант выложенный мной (на данный момент) будет работать если скрыть любую/любые строки , не относящиеся к верхней левой ячейке диапазона объединенной ячейки (т.е. H9).
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук


https://github.com/nervgh
 
Nerv, Не в обиду. Вы выложили недоработанную надстройку и закрыли ее от просмотра. Цель? Я не осуждаю, но на этом форуме мы у друг друга учимся, а так - во что форум превратится? Не спортивно.  
 
GiGant, посмотрите пожалуйста прилагаемый файл. Немножко попробовал варианты, в общем случае не работает только, если в строке есть индивидуальный формат шрифта в тексте. В остальном повторяет стандартный.
 
{quote}{login=VovaK}{date=28.07.2011 01:03}{thema=}{post}Nerv,    
GiGant, посмотрите пожалуйста прилагаемый файл. Немножко попробовал варианты, в общем случае не работает только, если в строке есть индивидуальный формат шрифта в тексте. В остальном повторяет стандартный.{/post}{/quote}  
 
Спасибо за беспокойство. Дело в том что мне помогли предыдущие посты, при этом взял на заметку ваш вариант. Не пойму почему тема всплыла, см . дату первого поста ))
Редко но метко ...
 
to GIG_ant: "Не пойму почему тема всплыла"  
У меня спортивный интерес)  
 
to VovaK: "Вы выложили недоработанную надстройку и закрыли ее от просмотра. Цель?"  
Надстройка ориентирована на обычного пользователя. За открытым кодом просьба обращаться на мой почтовый ящик.  
 
 
Постарался учесть замечания в примере от VovaK.  
Автоподбор высоты. Версия 2.5 beta
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук


https://github.com/nervgh
 
> Автоподбор высоты. Версия 2.5 beta  
 
высота подбирается не совсем точно...  
http://excelvba.ru/XL_Files/Sample__30-07-2011__15-31-17.zip  
 
Но, полагаю, в общем случае автоподбор высоты таких ячеек - задача весьма нетривиальная, и алгоритм будет достаточно сложным.  
 
PS: Я тоже когда-то пытался сделать подобный макрос:  
http://excelvba.ru/code/AutoFitMergedCells
 
Позвольте поблагодарить Вас за пример : )  
 
Пытаясь идти по пути наименьшего сопротивления, могу предложить следующий вариант решения: собрать адреса с ячейками, в кот. объединены строки в массив и пройти по ним еще раз)  
 
На Вашем примере:  
1. Выделяем ВЕСЬ лист, подбираем высоту  
2. Выделяем строку 3, подбираем высоту  
3. Выделяем строку 4, подбираем высоту  
4. Выделяем строку 5, подбираем высоту  
 
На данный момент это все делается руками, но можно и автоматизировать : )  
Опять таки, следует оговориться, это решение на скорую руку, и как оно будет вести себя на бланках документов, отдельная тема. Хотя, по идее, должно быть все правильно)
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук


https://github.com/nervgh
 
Применил немного другой алгоритм, в отличии от описанного выше.  
 
Попытался учесть замечания от EducatedFool.  
Автоподбор высоты. Версия 2.7 beta
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук


https://github.com/nervgh
 
эм, ну как то так...  
 
Автоподбор высоты. Версия 2.7
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук


https://github.com/nervgh
 
nerv, это Вы с кем разговариваете?:-)
Я сам - дурнее всякого примера! ...
 
KukLP, я все пытаюсь победить автоподбор. Пока ничья)  
Устраняю недочеты, и выкладываю обновленную надстройку : )
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук


https://github.com/nervgh
 
макрос закрыл, но могу поделиться!  
ну а кому сильно надо - сами пароль подберут :-)
 
смотрите сами : )
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук


https://github.com/nervgh
 
{quote}{login=nerv}{date=01.08.2011 09:22}{thema=}{post}KukLP, я все пытаюсь победить автоподбор. Пока ничья)  
Устраняю недочеты, и выкладываю обновленную надстройку : ){/post}{/quote}  
М.б. я невнимательно смотрел, но вот этот код, по-моему, будет попроще.  
Да и с форматом разным внутри текста - нормально отрабатывает.  
Единственное НО - объединение должно быть из ячеек нескольких столбцов и ТОЛЬКО ОДНОЙ строки. Вся "кутерьма" начинается - это если объединение содержит ячейки из нескольких строк. Тогда - вопрос, как распределить высоту блока среди строк. В этом и проблема.
Страницы: 1 2 3 4 След.
Читают тему (гостей: 1)
Наверх