Как сделать так чтобы размер текста в ячейке подгонялся с учетом определенной длины текста без усечения текста.
Например:
Например:
03.06.2010 03:35:01
Как сделать так чтобы размер текста в ячейке подгонялся с учетом определенной длины текста без усечения текста.
Например: |
|
|
|
03.06.2010 05:13:39
Поэкспериментируйте с Форматом ячейки -> Выравнивание. Автоподбор, перенос по словам, распределенный... много что есть.
"..Сладку ягоду рвали вместе, горьку ягоду я одна."
|
|
|
|
03.06.2010 14:28:48
Так Владимир Вам и ответил. Поставьте в форматировании Автоподбор ширины и шрифт уменьшится. А размер ячейки нет.
Я сам - дурнее всякого примера! ...
|
|
|
|
04.06.2010 16:16:08
Размер шрифта уменьшится, но автор хотел и перенос ещё.
|
|
|
|
04.06.2010 20:29:31
Может. Но я бы не стал вешать это на Worksheet_Change для всего листа. Да и подозреваю, что результат работы такого макроса не понравился бы автору.
Содержимое ячейки должно легко читаться. И документ-результат должен быть читаемым. А впихивать в каждую ячейку роман "Война и мир" Л.Н. Толстого - это не для табличного процессора. Если же речь идет только об одной ячейке, то и макрос городить нет смысла. Ручками быстрей. Но как писал The_Prist, "Неисповедимы пути вопрошающего". К этому и мое ехидство "Мне очень понравился Ваш "Например"". Знать бы что, зачем и куда - мможно было бы предметно обсуждать тему. А так мы просто гадаем. Напиши макрос, выяснится "Не так". Сколько раз уже на эти грабли...
Я сам - дурнее всякого примера! ...
|
|
|
|
04.06.2010 20:59:01
ну да про пример я уже и забыл....подождем автора, авось объявиться за решением
|
|||
|
|
05.06.2010 01:02:37
{quote}{login=Юрий М}{date=04.06.2010 04:16}{thema=}{post}Размер шрифта уменьшится, но автор хотел и перенос ещё.{/post}{/quote}
Все верно! У меня текст подставляется в ячейку автоматически. Иногда длинный, иногда короткий. Вот если ввести длинный текст то он уменьшается штатными фичами но без переноса, если подставляется короткий текст его размер остается таким же как был длинный текст, что меня не устраивает. А мне нужно чтобы текст автоматом подганялся к границам ячейки в зависимости от длины + с автопереносом если нужно. Ко всем: Что вы прицепились к "Например". Просто хотел привести пример но случайно клавишу Enter нажал и уже решил не приводить дабы не гадить топик.:))) |
|
|
|
05.06.2010 10:30:13
Никто не цеплялся к Вам. Мне вот интересно: каким образом приведение примера после нажатия клавиши Enter может загадить топик?
|
|
|
|
05.06.2010 22:48:36
{quote}{login=loginvovchyk}{date=05.06.2010 01:02}{thema=Re: }{post}Что вы прицепились к "Например".{/post}{/quote}
вообще тут постоянно все выпрашивают файл, что сделать и из чего сделать, ну на худой конец - подробно объяснить, что есть - что хочу...и заметьте что никто это гадостью не называет, да и вообще как можно назвать файл c расширением .xls гадостью. Тут за такое и по "наглой рыжей морде" могут дать... вы бы лучше написали что вам конкретно надо второй раз пытаюсь добиться правды 1. если знаков *** должно быть так 2. если знаков *** должно быть так 3. если знаков *** должно быть так ну и т.д. если вам файлы xls это гадость
|
|||
|
|
28.08.2012 18:21:16
Присоединяюсь к создателю топика.
Пример: Журнал электронный со списком абитуриентов (студентов, школьников и т.д. и т.п.). Соответственно - размер ячейки для ФИО - жестко установлен и имеет ширину в 2 строчки. Типа: Иванов Иван Иванович Или: Александрова Елена Ивановна Но, спасибо Дагестану и Азербайджану и прочим, появились люди с, мягко говоря, некороткими ФИО: Дадобоев Мухаммаддюсуф Абдурасуллович (реальное имя, но есть ведь и с более длинными фамилиями). НУ НЕ ВЛАЗИТ ОНО В 2 СТРОЧКИ! НУ НИКАК! Соответственно - включен автоперенос по словам. Включить авторазмер шрифта вместе с автопереносом - НЕЛЬЗЯ. А оставить только авторазмер - шрифт становится ОЧЕНЬ мелким. Так вот КАК уменьшить шрифт настолько, чтобы такое имя ВЛЕЗЛО, но при этом уложилось в 2 строки при постоянной ширине ячеек? В примере - как раз такие 2 листа журнала. |
|
|
|
28.08.2012 18:24:43
Ах да, забыл сказать - конечно, можно сидеть и вручную уменьшать шрифт в ячейках с длинными фамилиями и увеличивать (до стандартного 14 пунктов - не больше!) в тех, где фамилия сменяется на более короткую.
Но желательно автоматическое изменение шрифта при вставке в ячейки фамилийю |
|
|
|
28.08.2012 18:57:19
{quote}{login=LShark}{date=28.08.2012 06:24}{thema=}{post}Ах да, забыл сказать - конечно, можно...{/post}{/quote}И я думаю, что можно сделать по такому, например, варианту... Как вариант, разумеется... ;) -10734-
|
|
|
|
28.08.2012 20:31:52
1. Вручную? Сэр... Записей более 800, из них примерно 20% - с длинными ФИО, не умещающимися в 14 шрифте в 2 строчки. Да тут проще застрелиться, чем сделать.
2. А что Вы предложили? Сделать в 2 столбца? Нет. Надо ИМЕННО в 1 столбец. Так как количество столбцов, их размер и размещение должны умещаться при распечатке в стандартном листе. Поэтому надо именно УМЕНЬШИТЬ шрифт, чтобы независимо от длины ФИО разместился в данной ячейке. |
|
|
|
28.08.2012 20:45:39
если не хочется стреляться - можно застрелить тех из списка, у кого слишком длинные фамилии.
ну или как вариант - тему почитать.
фрилансер Excel, VBA - контакты в
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг |
|
|
|
28.08.2012 20:47:52
{quote}{login=LShark}{date=28.08.2012 08:31}{thema=}{post}1...Да тут проще застрелиться... {/post}{/quote}
А вы легких путей не ищИте - вот для "практики" вариантик: Остап-Сулейман-Берта-Мария-Бендер-Бей - он же - Бендер-Задунайский, Остап Ибрагимович... Это не ваш студент?... ;) зы Когда оченно хочется, но не получается - идут на компромиссы, однако, имхо... -23040- |
|
|
|
28.08.2012 21:35:53
Сынов турецко-подданых у нас не поступало, а вот греки были из дальних.
Я же говорю про перепись дагестанского и азербайджанского населения, в которую превращены списки внебюджетных отделений практически каждого ВУЗа. Вопрос продолжает быть актуальным - КАК автоматически уменьшить шрифт для того, чтобы текст разместился в ячейке, не изменяя ее размера? |
|
|
|
28.08.2012 21:49:44
ответ: макросом.
пс. в вашем примере либо шрифт 14пт в две строчки не соответствует высоте ячейки, либо высота ячейки в 34пт не соответствует тексту из двух строчек шрифтом с кеглем 14. одно из двух :) по крайней мере, Excel считает, что минимально необходимая высота такой ячейки должна быть 37,5 пт. и он прав - при такой высоте ячейки текст читается, иначе (как сейчас) - кажется ущербным огрызком.
фрилансер Excel, VBA - контакты в
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг |
|
|
|
28.08.2012 22:00:23
{quote}{login=ikki}{date=28.08.2012 09:49}{thema=}{post}ответ: макросом.{/post}{/quote}
вообще-то думаю, что алгоритм очевиден - он прост до безобразия. но на всякий случай озвучу: 1) запоминаем (можно прямо в тексте макроса забить константой) "стандартное" значение высоты ячейки. 2) для ЛЮБОЙ непустой ячейки устанавливаем шрифт в 14 пунктов. 3) выполняем автоподбор высоты и проверяем - если высота ячейки в итоге стала больше 37,5 - уменьшаем кегль на 0,5 и снова в начало п.3 4) принудительно устанавливаем "стандартную" высоту. макрос не шибко быстрый, но для 800 строк, думаю, в минуту точно уложится.
фрилансер Excel, VBA - контакты в
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг |
|
|
|
29.08.2012 09:34:10
Это уже результат.
Можно поподробнее про "автоподбор высоты"? Как это осуществить? Напомню, что в ячейке, в которой размещены ФИО, 2 строчки (и включено "перенос по словам". Кстати, для примера. Вышеназванная ФИО (Дадобоев Мухаммаддюсуф Абдурасуллович при уменьшении шрифта до 12 вставляется так (как и надо): Дадобоев Мухаммаддюсуф Абдурасуллович Если же шрифт 12,5 и более: Дадобоев Мухаммаддюсуф Абдурасуллович Соответственно, при выравнивании в ячейке "По вертикали - По центру" обрезается вверху половина фамилии, а внизу - половина отчества. Если же по высоте центрока другая - просто пропадает отчество. |
||||
|
|
|||