Sub rast()
Columns("A:A").ColumnWidth = 60.71
End Sub
растягиваю столбец "А" так, чтобы последний столбец таблицы, а именно столбец E не выехал за установленные границы страницы (пунктирная синяя линия). Было так, после выполнения макроса стало так. В моем случае это значение 60,71. Но дело в том, что столбцы В,С,D,E могут быть разные по размеру в разных документах. Вопрос - что прописать в коде вместо 60,71, чтобы макрос автоматом максимально растягивал бы столбец А и при этом столбец Е не вылезал бы за границы страницы, независимо от размеров столбцов В,С,D,E.
Ну, видимо сначала определять сумму значений "ширин" столбцов с В по Е, затем брать ширину листа до пунктирной линии и отнимать от этого значения сумму "ширин" В:Е.
Sub rast()
Dim w, c&, i&, dw, noc
c = ActiveSheet.VPageBreaks(1).Location.Column
w = Columns(c).ColumnWidth
Do
Columns(c).ColumnWidth = Columns(c).ColumnWidth / 2
If Columns(c).ColumnWidth < 0.02 Then Exit Do
DoEvents
Loop Until ActiveSheet.VPageBreaks(1).Location.Column <> c
noc = Columns(c).ColumnWidth < 0.02
For i = 6 To c + IIf(noc, -1, 0)
dw = dw + Columns(i).ColumnWidth
Next
If Columns(c).ColumnWidth <> w Then Columns(c).ColumnWidth = w
Columns(1).ColumnWidth = Columns(1).ColumnWidth + dw
End Sub
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
Уважаемый Игорь Гончаренко, доброго Вам дня! Прошу помочь с Вашим макросом... какие-то чудеса происходят... Есть два совершенно одинаковых файла - в одном файле макрос РАБОТАЕТ, в другом НЕ работает.
Прошу Вас посмотреть ИМЕННО второй не рабочий файл - в чем там причина, и если можно подправьте пожалуйста код.