Здравствуйте. Скачал подобный код, фактически какой мне надо, а под себя скорректировать не получается. В ячейке С44 на листе Д выбираем «договора купли – продажи земельного участка», то высота строки 15 на листе 5а устанавливается в размере 48 пиксел. А когда в ячейке С44 выбираем «государственного акта», то высота строки 15 на листе 5а зависит от ячейки С45. Если в С45 пусто, то высота строки 15 на листе 5а устанавливается в размере 27 пиксел, в противном случае 36,75 пиксел. Может кто из макросописателей подскажет, в чем дело?
Здравствуйте. Скачал подобный код, фактически какой мне надо, а под себя скорректировать не получается. В ячейке С44 на листе Д выбираем «договора купли – продажи земельного участка», то высота строки 15 на листе 5а устанавливается в размере 48 пиксел. А когда в ячейке С44 выбираем «государственного акта», то высота строки 15 на листе 5а зависит от ячейки С45. Если в С45 пусто, то высота строки 15 на листе 5а устанавливается в размере 27 пиксел, в противном случае 36,75 пиксел. Может кто из макросописателей подскажет, в чем дело?ivanov1974
А покажите, где Вы написали что-то типа "Мне нужно, чтобы было так: ..."? В чем ошибка? Нет никакой ошибки, код нормально работает. Правда, не так, как Вам нужно, но мы же не знаем, как Вам нужно, правильно? Попробую угадать. Если Вам нужно, чтобы строка 44 на листе "Д" изменяла свою высоту так, чтобы всегда все было видно, то код Вам нужен такой [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Row = 44 Then Rows(44).EntireRow.AutoFit End Sub
[/vba] Смотрите файл, попробуйте поменять значения в С44
А покажите, где Вы написали что-то типа "Мне нужно, чтобы было так: ..."? В чем ошибка? Нет никакой ошибки, код нормально работает. Правда, не так, как Вам нужно, но мы же не знаем, как Вам нужно, правильно? Попробую угадать. Если Вам нужно, чтобы строка 44 на листе "Д" изменяла свою высоту так, чтобы всегда все было видно, то код Вам нужен такой [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Row = 44 Then Rows(44).EntireRow.AutoFit End Sub
[/vba] Смотрите файл, попробуйте поменять значения в С44_Boroda_
alex1248 сделал правильную подсказку, теперь в строке 15 устанавливается нужная высота. Boroda, Ваш код для меня интересен и я его обязательно использую в своей работе. Спасибо всем!
alex1248 сделал правильную подсказку, теперь в строке 15 устанавливается нужная высота. Boroda, Ваш код для меня интересен и я его обязательно использую в своей работе. Спасибо всем!ivanov1974
Похоже тема одна и та же, поэтому не создаю новую тему. Уважаемый Boroda написал код, устанавливающий высоту строки той ячейки, в которой выбираем из выпадающего списка (ячейка С44 листа «Д»). А может кто – нибудь подкоректировать код, чтобы в зависимости от содержания автоматически устанавливалась высота объединенной ячейки А5 на листе «2». Возможно ли такое вообще?
Похоже тема одна и та же, поэтому не создаю новую тему. Уважаемый Boroda написал код, устанавливающий высоту строки той ячейки, в которой выбираем из выпадающего списка (ячейка С44 листа «Д»). А может кто – нибудь подкоректировать код, чтобы в зависимости от содержания автоматически устанавливалась высота объединенной ячейки А5 на листе «2». Возможно ли такое вообще?ivanov1974
Это посложнее будет, ячейка-то объединенная. [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]
Это посложнее будет, ячейка-то объединенная. [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