Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / FoxPro, Visual FoxPro Новый топик    Ответить
 Автоподбор высоты ячейки в Excel  [new]
Maltsev Max
Member

Откуда: Россия, Пермь
Сообщений: 352
Есть несколько ячеек объединенных в одну. Засовываю туда строку -- не влазит, говорю "переносить по словам" и "автоподбор высоты". Переносит, но высоту не меняет.
Причем из Excel`а то же самое. Это видимо Excel`овский баг. У объединенных ячеек высоту подбирать не хочет.
Подскажите, как можно узнать во сколько строк в ячейке данные расположены ?!
Или как все же сделать этот долбаный автоподбор высоты у объединенных ячеек ?! (в одну ячейку засунуть никак не получится т.к. оччень хитрая сетка нарисована.)
18 окт 04, 12:34    [1041271]     Ответить | Цитировать Сообщить модератору
 Re: Автоподбор высоты ячейки в Excel  [new]
Dushes
Member

Откуда: Кострома
Сообщений: 158
Юзай в сторону Rows.Autofit - обязательно поможет....у меня проблем не было
С уважением
duШes
....return ThisForm.exGrid1.p_oColumns("COLUMN1").M_AddHeader("header4",4)
18 окт 04, 15:27    [1042261]     Ответить | Цитировать Сообщить модератору
 Re: Автоподбор высоты ячейки в Excel  [new]
leaf
Member [заблокирован]

Откуда: Ростов-на-Дону --> Москва
Сообщений: 2661
rows.avtofit не поможет
узнать объеденены ли ячейки можно по .MergeCells = True,false
18 окт 04, 16:09    [1042503]     Ответить | Цитировать Сообщить модератору
 Re: Автоподбор высоты ячейки в Excel  [new]
Dushes
Member

Откуда: Кострома
Сообщений: 158
leaf
rows.avtofit не поможет
узнать объеденены ли ячейки можно по .MergeCells = True,false


Достаточно сделать простой макрос в Excel, чтобы убедиться в обратном:
Sub Макрос1()
'
' Макрос1 Макрос
' Макрос записан 18.10.2004 (318)
'
' Сочетание клавиш: Ctrl+й
'
Selection.Rows.AutoFit
End Sub

Все прекрасненько так работает и никаких нареканий....я же выше сказал, лично у меня не было таких проблем, хотя, может быть, у меня Excel такой замечательный ;)///

С уважением
duШes
....return ThisForm.exGrid1.p_oColumns("COLUMN1").M_AddHeader("header4",4)
18 окт 04, 18:03    [1043053]     Ответить | Цитировать Сообщить модератору
 Re: Автоподбор высоты ячейки в Excel  [new]
Dushes
Member

Откуда: Кострома
Сообщений: 158
Сделал, и замомневался..проверил на машине соседа, действительно, баг есть, а я то даже и не задумывался.....

Подтверждаю, необходимо проверять на MergeCells.

С уважением
duШes
....return ThisForm.exGrid1.p_oColumns("COLUMN1").M_AddHeader("header4",4)

ps: а Excel у меня действительно замечательный оказался...
18 окт 04, 18:06    [1043065]     Ответить | Цитировать Сообщить модератору
 Re: Автоподбор высоты ячейки в Excel  [new]
Maltsev Max
Member

Откуда: Россия, Пермь
Сообщений: 352
Дело в том, что точно знаю, что они объеденены, и нет никаких возможностей не объединять их.

Но бывают случаи когда в ячейке данные находятся в несколько строк. Как узнать во сколько строк в ячейку даттые записались ?!?

з.ы. Делаю Счет фактуру. поле продукция.
19 окт 04, 09:07    [1043647]     Ответить | Цитировать Сообщить модератору
 Re: Автоподбор высоты ячейки в Excel  [new]
leaf
Member [заблокирован]

Откуда: Ростов-на-Дону --> Москва
Сообщений: 2661
2Dushes
иногда лучше жевать чем говорить
а что вы все заладили баг,баг не баг это просто оно так устроено
и в екселе так сразу и не видно штатного средства для получения информации о количестве разбиений строки в ячейки поэтому я бы попробывал сделать ручками
либо уменьшил шриф например чтобы 100% попадало в одну строчку
19 окт 04, 10:44    [1044027]     Ответить | Цитировать Сообщить модератору
 Re: Автоподбор высоты ячейки в Excel  [new]
AleksMed
Member

Откуда: Россия, Серпухов-Москва
Сообщений: 1546
Row.AutoFit сработает для Excel XP, а для Excel 2000 - нет.
Объединение тут не при чем.
19 окт 04, 11:30    [1044269]     Ответить | Цитировать Сообщить модератору
 Re: Автоподбор высоты ячейки в Excel  [new]
Dushes
Member

Откуда: Кострома
Сообщений: 158
Сейчас тебе ответят, что иногда лучше жевать, чем говорить ;)....Excel XP действительно все корректно отрабатывает...

С уважением
duШes
....return ThisForm.exGrid1.p_oColumns("COLUMN1").M_AddHeader("header4",4)
19 окт 04, 11:58    [1044441]     Ответить | Цитировать Сообщить модератору
 Re: Автоподбор высоты ячейки в Excel  [new]
AleksMed
Member

Откуда: Россия, Серпухов-Москва
Сообщений: 1546
Да я щас сам себе такое напишу :)
Не проверил на объединенных ячейках и советую :(
При объединении ячеек AutoFit не работает, что странно.
Ну при вертикальном объединении еще понятно, соображалка может заклинить на какую строку ориентироваться, а вот при горизонтальном - мог бы и сообразить (это я про Excel).
19 окт 04, 12:12    [1044523]     Ответить | Цитировать Сообщить модератору
 Re: Автоподбор высоты ячейки в Excel  [new]
Dushes
Member

Откуда: Кострома
Сообщений: 158
У меня вообще прикол в том, что при первом создании новой книги и объединении двух ячеек по вертикали AutoFit нормально все отрабатывает, не могу пока поймать условия, при каких он так себя ведет, второй раз делаю после складывания ячеек, уже не работает...все-таки баг есть....

С уважением
duШes
....return ThisForm.exGrid1.p_oColumns("COLUMN1").M_AddHeader("header4",4)
19 окт 04, 12:45    [1044688]     Ответить | Цитировать Сообщить модератору
 Re: Автоподбор высоты ячейки в Excel  [new]
Dushes
Member

Откуда: Кострома
Сообщений: 158
Все, приношу извинения, лучше бы жевал ;)....
У меня фраза состояла всего из двух слов, которые Excel и раскидывал по ячейкам из объединения, собственно из чего я ошибочно и делал выводы....на фразе, содержащей больше >2 слов, такой баг выскочил....


С уважением
duШes
....return ThisForm.exGrid1.p_oColumns("COLUMN1").M_AddHeader("header4",4)

пойду жевать да покурю блин чего0нибудь, надо же так лопухнуться..:(
19 окт 04, 12:50    [1044714]     Ответить | Цитировать Сообщить модератору
 Re: Автоподбор высоты ячейки в Excel  [new]
Igor Korolyov
Member

Откуда: Гомель, Беларусь
Сообщений: 2512

Hi All!

Как обходной манёвр - кинуть текст в ОДНУ ячейку (не Merged), задать ширину
(я так понимаю в шаблоне ширина фиксирована), сделать Row.AutoFit() и
прочитать полученную высоту. Можно также через Win32API, но там геморра
будет воз и тележка :(
А насчёт того почему не делает - так как ему это делать то? предположим что
в первой колонке объединениы 1-я и 2-я строки и записана фраза, которая чтоб
вместиться складывается в 10 строк. А во второй колонке 2 ячейки НЕ
объединены, и содержат соответственно 3 и 4 строки текста (итого как видим 7
строк). И как же нужно раздвинуть строки? точнее КАКИЕ раздвигать :) Первую?
Вторую? Обе? Пропорционально?
Видимо чтобы не делать нечто "странно" работающее MS и не сделали такой
фичи... И наверное не сделают никогда.

Posted via ActualForum NNTP Server 1.0

19 окт 04, 22:27    [1046611]     Ответить | Цитировать Сообщить модератору
 Re: Автоподбор высоты ячейки в Excel  [new]
Dushes
Member

Откуда: Кострома
Сообщений: 158
Решение насчет опеределения высоты объединенной ячейки наверно самое простое.....5 баллов!!! -


С уважением
duШes
....return ThisForm.exGrid1.p_oColumns("COLUMN1").M_AddHeader("header4",4)

ps: пойду опять пожую чегой-нибудь...;)
20 окт 04, 09:11    [1046900]     Ответить | Цитировать Сообщить модератору
 Re: Автоподбор высоты ячейки в Excel  [new]
Maltsev Max
Member

Откуда: Россия, Пермь
Сообщений: 352
Спасибо.
Подбор высоты у необъдиненных ячеек -- это выход.
20 окт 04, 11:12    [1047403]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: Автоподбор высоты ячейки в Excel  [new]
Legushka
Member

Откуда: Казань
Сообщений: 630
может быть сможете мне помочь)))


кусок из mht файла определяющий стили полей:




@page
	{margin:.55in .39in .28in .55in;
	mso-header-margin:.2in;
	mso-footer-margin:.2in;
	mso-page-orientation:landscape;}
tr
	{mso-height-source:auto;}
col
	{mso-width-source:auto;}
br
	{mso-data-placement:same-cell;}
.style0
	{mso-number-format:General;
	text-align:general;
	vertical-align:bottom;
	white-space:nowrap;
	mso-rotate:0;
	mso-background-source:auto;
	mso-pattern:auto;
	color:windowtext;
	font-size:10.0pt;
	font-weight:400;
	font-style:normal;
	text-decoration:none;
	font-family:"Arial Cyr";
	mso-generic-font-family:auto;
	mso-font-charset:204;
	border:none;
	mso-protection:locked visible;
	mso-style-name:\041E\0431\044B\0447\043D\044B\0439;
	mso-style-id:0;}
td
	{mso-style-parent:style0;
	padding-top:1px;
	padding-right:1px;
	padding-left:1px;
	mso-ignore:padding;
	color:windowtext;
	font-size:10.0pt;
	font-weight:400;
	font-style:normal;
	text-decoration:none;
	font-family:"Arial Cyr";
	mso-generic-font-family:auto;
	mso-font-charset:204;
	mso-number-format:General;
	text-align:general;
	vertical-align:bottom;
	border:none;
	mso-background-source:auto;
	mso-pattern:auto;
	mso-protection:locked visible;
	white-space:nowrap;
	mso-rotate:0;}
.xl24
	{mso-style-parent:style0;
	font-family:"Times New Roman", serif;
	mso-font-charset:204;}

.xl25
	{mso-style-parent:style0;
	font-size:8.5pt;
	font-family:"Times New Roman", serif;
	mso-font-charset:204;
	text-align:center;
	vertical-align:middle;
	border-top:.5pt solid windowtext;
	border-right:none;
	border-bottom:none;
	border-left:none;
	white-space:normal;}
...



каг сделать чтобы поле использующее xl25 стиль автоматически выравнивала высоту строки по тексту??????

что надо дописать в описание стиля????
4 май 08, 15:54    [5622073]     Ответить | Цитировать Сообщить модератору
Все форумы / FoxPro, Visual FoxPro Ответить