Подскажите пожалуйста, как объединить два макроса 1-й макрос - форматирует таблицу по границе страницы [vba]
Код
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
[/vba]
2-й макрос преобразовывает м2 и м3 с надстрочной цифрой [vba]
Код
Sub preobraz_m2_m3()
'ниженаписанный код преобразовывает цифры в словах м2 и м3 в надстрочные
Dim x, i& x = Range("B1", Cells(Rows.Count, 2).End(xlUp)).Value For i = 1 To UBound(x) If x(i, 1) Like "?#" Then Cells(i, 2).Characters(2, 1).Font.Superscript = True Next i
End Sub
[/vba]
Конфликтует переменная i&, которая есть в первом макросе и во втором. Замена буквы i& ничего не дает. Помогите пожалуйста. Файл прикладываю.
Спасибо
Доброго дня, уважаемые знатоки VBA!
Подскажите пожалуйста, как объединить два макроса 1-й макрос - форматирует таблицу по границе страницы [vba]
Код
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
[/vba]
2-й макрос преобразовывает м2 и м3 с надстрочной цифрой [vba]
Код
Sub preobraz_m2_m3()
'ниженаписанный код преобразовывает цифры в словах м2 и м3 в надстрочные
Dim x, i& x = Range("B1", Cells(Rows.Count, 2).End(xlUp)).Value For i = 1 To UBound(x) If x(i, 1) Like "?#" Then Cells(i, 2).Characters(2, 1).Font.Superscript = True Next i
End Sub
[/vba]
Конфликтует переменная i&, которая есть в первом макросе и во втором. Замена буквы i& ничего не дает. Помогите пожалуйста. Файл прикладываю.
'ниженаписанный код растягивает столбец А по границе страницы с учетом других столбцов
Dim w, c&, dw, noc Dim x, i&
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
x = Range("B1", Cells(Rows.Count, 2).End(xlUp)).Value For i = 1 To UBound(x) If x(i, 1) Like "?#" Then Cells(i, 2).Characters(2, 1).Font.Superscript = True Next i
End Sub
[/vba]
[vba]
Код
Sub rast()
'ниженаписанный код растягивает столбец А по границе страницы с учетом других столбцов
Dim w, c&, dw, noc Dim x, i&
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
x = Range("B1", Cells(Rows.Count, 2).End(xlUp)).Value For i = 1 To UBound(x) If x(i, 1) Like "?#" Then Cells(i, 2).Characters(2, 1).Font.Superscript = True Next i