иван8715 98 Опубликовано 28 марта, 2014 Share Опубликовано 28 марта, 2014 Есть программа учет счетов в Экселе. С листа "реестр" макросом данные восстанавливаются на лист "форма". На листе "форма" нужны обьединенные ячейки, т.к. заголовок счета сложный. Проблема такая: Посмотрите "Книга1" - при нажатии мышкой по границе строк высота автоматически выравнивается (потому что весь текст в одной ячейке). а в "Книга2" - из-за обьединенных ячеек нет. Подскажите что можно придумать, может макросом сделать. 28-03-2014_08-53-15.zip Цитата Ссылка на сообщение Поделиться на другие сайты
иван8715 98 Опубликовано 29 марта, 2014 Автор Share Опубликовано 29 марта, 2014 Специалистов по Экселю на форуме нет? Цитата Ссылка на сообщение Поделиться на другие сайты
иван8715 98 Опубликовано 1 апреля, 2014 Автор Share Опубликовано 1 апреля, 2014 Никто не в силах помочь? Цитата Ссылка на сообщение Поделиться на другие сайты
Roman_SO 267 Опубликовано 1 апреля, 2014 Share Опубликовано 1 апреля, 2014 Чукча не писатель, чукча искатель Решение раз Решение два На нашем форуме в Excel вроде бы Cybertronix шарит Цитата Ссылка на сообщение Поделиться на другие сайты
иван8715 98 Опубликовано 3 апреля, 2014 Автор Share Опубликовано 3 апреля, 2014 Это только для одной строки А в счете много строк однотипных. Как там быть? Дайте готовый макрос. В моем примере размножьте строку и попробуйте на 10 строк так сделать. Цитата Ссылка на сообщение Поделиться на другие сайты
Roman_SO 267 Опубликовано 3 апреля, 2014 Share Опубликовано 3 апреля, 2014 Дайте готовый макрос. Чукча не писатель, чукча искатель Цитата Ссылка на сообщение Поделиться на другие сайты
иван8715 98 Опубликовано 3 апреля, 2014 Автор Share Опубликовано 3 апреля, 2014 (изменено) А готовый макрос где? Вот это подходит, но на несколько строк в выделенном диапазоне не работает. Только на одну строку (где несколько обьединенных ячеек) Private Sub ВысотаСтрок() Dim CurrentRowHeight As Single, MergedCellRgWidth As Single Dim CurrCell As Range Dim ActiveCellWidth As Single, PossNewRowHeight As Single If ActiveCell.MergeCells Then With ActiveCell.MergeArea If .WrapText = True Then Application.ScreenUpdating = False CurrentRowHeight = .RowHeight ActiveCellWidth = ActiveCell.ColumnWidth For Each CurrCell In Selection MergedCellRgWidth = CurrCell.ColumnWidth + MergedCellRgWidth Next .MergeCells = False .Cells(1).ColumnWidth = MergedCellRgWidth .EntireRow.AutoFit PossNewRowHeight = .RowHeight .Cells(1).ColumnWidth = ActiveCellWidth .MergeCells = True .RowHeight = IIf(CurrentRowHeight > PossNewRowHeight, CurrentRowHeight, PossNewRowHeight) End If End With End If End Sub Изменено 3 апреля, 2014 пользователем иван8715 Цитата Ссылка на сообщение Поделиться на другие сайты
Roman_Five 598 Опубликовано 3 апреля, 2014 Share Опубликовано 3 апреля, 2014 Дайте готовый макрос. А готовый макрос где? Строгое предупреждение от модератора Roman_Five Уважительнее, товарищ! Цитата Ссылка на сообщение Поделиться на другие сайты
иван8715 98 Опубликовано 3 апреля, 2014 Автор Share Опубликовано 3 апреля, 2014 Дайте готовый макрос. пожалуйста Цитата Ссылка на сообщение Поделиться на другие сайты
иван8715 98 Опубликовано 5 апреля, 2014 Автор Share Опубликовано 5 апреля, 2014 Поясню. Для одной строки нажимать макрос для выравнивания можно. А для 15 строк отмечать каждую строку отдельно и нажимать макрос равносильно просто вручную мышкой подтянуть границу, нет автоматизма. Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.