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

Вход

Регистрация

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

 

= Мир MS Excel/Установление высоты строки - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Установление высоты строки (Макросы/Sub)
Установление высоты строки
ivanov1974 Дата: Среда, 17.09.2014, 21:06 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 149
Репутация: 1 ±
Замечаний: 0% ±

Здравствуйте.
Скачал подобный код, фактически какой мне надо, а под себя скорректировать не получается.
В ячейке С44 на листе Д выбираем «договора купли – продажи земельного участка», то высота строки 15 на листе 5а устанавливается в размере 48 пиксел.
А когда в ячейке С44 выбираем «государственного акта», то высота строки 15 на листе 5а зависит от ячейки С45.
Если в С45 пусто, то высота строки 15 на листе 5а устанавливается в размере 27 пиксел, в противном случае 36,75 пиксел.
Может кто из макросописателей подскажет, в чем дело?
К сообщению приложен файл: 1075283.xls (81.5 Kb)
 
Ответить
СообщениеЗдравствуйте.
Скачал подобный код, фактически какой мне надо, а под себя скорректировать не получается.
В ячейке С44 на листе Д выбираем «договора купли – продажи земельного участка», то высота строки 15 на листе 5а устанавливается в размере 48 пиксел.
А когда в ячейке С44 выбираем «государственного акта», то высота строки 15 на листе 5а зависит от ячейки С45.
Если в С45 пусто, то высота строки 15 на листе 5а устанавливается в размере 27 пиксел, в противном случае 36,75 пиксел.
Может кто из макросописателей подскажет, в чем дело?

Автор - ivanov1974
Дата добавления - 17.09.2014 в 21:06
_Boroda_ Дата: Среда, 17.09.2014, 21:13 | Сообщение № 2
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16675
Репутация: 6481 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Идите на лист "Д", нажмите правой кнопкой мыши на название листа, выберите "Исходный текст" - вылезет код макроса. Вот в нем-то и дело.


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеИдите на лист "Д", нажмите правой кнопкой мыши на название листа, выберите "Исходный текст" - вылезет код макроса. Вот в нем-то и дело.

Автор - _Boroda_
Дата добавления - 17.09.2014 в 21:13
ivanov1974 Дата: Среда, 17.09.2014, 22:36 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 149
Репутация: 1 ±
Замечаний: 0% ±

А нельзя ли более конкретно, где ошибка?
 
Ответить
СообщениеА нельзя ли более конкретно, где ошибка?

Автор - ivanov1974
Дата добавления - 17.09.2014 в 22:36
alex1248 Дата: Среда, 17.09.2014, 22:56 | Сообщение № 4
Группа: Проверенные
Ранг: Обитатель
Сообщений: 384
Репутация: 71 ±
Замечаний: 0% ±

Excel 2007, 2010
ivanov1974, попробуйте Sheets("Лист41") заменить на Sheets("5а").


skype alex12481632
Qiwi +79276708519
 
Ответить
Сообщениеivanov1974, попробуйте Sheets("Лист41") заменить на Sheets("5а").

Автор - alex1248
Дата добавления - 17.09.2014 в 22:56
_Boroda_ Дата: Среда, 17.09.2014, 23:17 | Сообщение № 5
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16675
Репутация: 6481 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
А нельзя ли более конкретно, где ошибка?

А покажите, где Вы написали что-то типа "Мне нужно, чтобы было так: ..."? В чем ошибка? Нет никакой ошибки, код нормально работает. Правда, не так, как Вам нужно, но мы же не знаем, как Вам нужно, правильно?
Попробую угадать. Если Вам нужно, чтобы строка 44 на листе "Д" изменяла свою высоту так, чтобы всегда все было видно, то код Вам нужен такой
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
     If Target.Row = 44 Then Rows(44).EntireRow.AutoFit
End Sub
[/vba]
Смотрите файл, попробуйте поменять значения в С44
К сообщению приложен файл: 1075283_2.xls (63.0 Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
Сообщение
А нельзя ли более конкретно, где ошибка?

А покажите, где Вы написали что-то типа "Мне нужно, чтобы было так: ..."? В чем ошибка? Нет никакой ошибки, код нормально работает. Правда, не так, как Вам нужно, но мы же не знаем, как Вам нужно, правильно?
Попробую угадать. Если Вам нужно, чтобы строка 44 на листе "Д" изменяла свою высоту так, чтобы всегда все было видно, то код Вам нужен такой
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
     If Target.Row = 44 Then Rows(44).EntireRow.AutoFit
End Sub
[/vba]
Смотрите файл, попробуйте поменять значения в С44

Автор - _Boroda_
Дата добавления - 17.09.2014 в 23:17
ivanov1974 Дата: Четверг, 18.09.2014, 20:06 | Сообщение № 6
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 149
Репутация: 1 ±
Замечаний: 0% ±

alex1248 сделал правильную подсказку, теперь в строке 15 устанавливается нужная высота.
Boroda, Ваш код для меня интересен и я его обязательно использую в своей работе.
Спасибо всем!
 
Ответить
Сообщениеalex1248 сделал правильную подсказку, теперь в строке 15 устанавливается нужная высота.
Boroda, Ваш код для меня интересен и я его обязательно использую в своей работе.
Спасибо всем!

Автор - ivanov1974
Дата добавления - 18.09.2014 в 20:06
ivanov1974 Дата: Вторник, 23.09.2014, 20:50 | Сообщение № 7
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 149
Репутация: 1 ±
Замечаний: 0% ±

Похоже тема одна и та же, поэтому не создаю новую тему. Уважаемый Boroda написал код, устанавливающий высоту строки той ячейки, в которой выбираем из выпадающего списка (ячейка С44 листа «Д»). А может кто – нибудь подкоректировать код, чтобы в зависимости от содержания автоматически устанавливалась высота объединенной ячейки А5 на листе «2». Возможно ли такое вообще?
К сообщению приложен файл: 0598682.xls (51.0 Kb)
 
Ответить
СообщениеПохоже тема одна и та же, поэтому не создаю новую тему. Уважаемый Boroda написал код, устанавливающий высоту строки той ячейки, в которой выбираем из выпадающего списка (ячейка С44 листа «Д»). А может кто – нибудь подкоректировать код, чтобы в зависимости от содержания автоматически устанавливалась высота объединенной ячейки А5 на листе «2». Возможно ли такое вообще?

Автор - ivanov1974
Дата добавления - 23.09.2014 в 20:50
_Boroda_ Дата: Вторник, 23.09.2014, 21:28 | Сообщение № 8
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16675
Репутация: 6481 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Это посложнее будет, ячейка-то объединенная.
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
     If Target.Address(0, 0) = "C44" Then
     Application.ScreenUpdating = 0
         With Лист1
             .Range("A5").UnMerge
             b_ = .Columns("B").ColumnWidth
             a_ = .Columns("A").ColumnWidth
             .Columns("A").ColumnWidth = a_ + b_
             .Range("A5").Rows.AutoFit
             .Range("A5:B5").Merge
             .Columns("A").ColumnWidth = a_
         End With
     Application.ScreenUpdating = 1
     End If
End Sub
[/vba]
К сообщению приложен файл: 0598682_1.xls (59.5 Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеЭто посложнее будет, ячейка-то объединенная.
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
     If Target.Address(0, 0) = "C44" Then
     Application.ScreenUpdating = 0
         With Лист1
             .Range("A5").UnMerge
             b_ = .Columns("B").ColumnWidth
             a_ = .Columns("A").ColumnWidth
             .Columns("A").ColumnWidth = a_ + b_
             .Range("A5").Rows.AutoFit
             .Range("A5:B5").Merge
             .Columns("A").ColumnWidth = a_
         End With
     Application.ScreenUpdating = 1
     End If
End Sub
[/vba]

Автор - _Boroda_
Дата добавления - 23.09.2014 в 21:28
ivanov1974 Дата: Вторник, 23.09.2014, 22:13 | Сообщение № 9
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 149
Репутация: 1 ±
Замечаний: 0% ±

Вот это голова! Спасибо огромное, Boroda!
 
Ответить
СообщениеВот это голова! Спасибо огромное, Boroda!

Автор - ivanov1974
Дата добавления - 23.09.2014 в 22:13
RAN Дата: Вторник, 23.09.2014, 23:01 | Сообщение № 10
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеПопробую угадать :'(

Автор - RAN
Дата добавления - 23.09.2014 в 23:01
_Boroda_ Дата: Вторник, 23.09.2014, 23:35 | Сообщение № 11
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16675
Репутация: 6481 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Не понял. Один файл, один вопрос, меняется только ячейка. Что не понравилось?
Попробую угадать :'(


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеНе понял. Один файл, один вопрос, меняется только ячейка. Что не понравилось?
Попробую угадать :'(

Автор - _Boroda_
Дата добавления - 23.09.2014 в 23:35
ivanov1974 Дата: Вторник, 30.09.2014, 22:53 | Сообщение № 12
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 149
Репутация: 1 ±
Замечаний: 0% ±

Я так и не понял, нарушил я правила форума, или нет?
 
Ответить
СообщениеЯ так и не понял, нарушил я правила форума, или нет?

Автор - ivanov1974
Дата добавления - 30.09.2014 в 22:53
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Установление высоты строки (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

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