Добрый день. Нужно пронумеровать строки в следующем формате: 001, 002, 003 и т.д. до первой непустой ячейки. Кто может подсказать как это сделать?
Добрый день. Нужно пронумеровать строки в следующем формате: 001, 002, 003 и т.д. до первой непустой ячейки. Кто может подсказать как это сделать?drugojandrew
Как раз форматом От любой первоначально выделенной ячейки вниз до первой непустой [vba]
Код
Sub tt() Dim d_ As Range Set d_ = Selection(1) If d_ <> "" Then Exit Sub With d_ r0_ = .Row r1_ = .End(xlDown).Row d_ = 1 .Resize(r1_ - r0_).DataSeries Rowcol:=xlColumns, Type:=xlLinear, Date:=xlDay, Step:=1, Trend:=False .Resize(r1_ - r0_).NumberFormat = "000" End With End Sub
[/vba]
Как раз форматом От любой первоначально выделенной ячейки вниз до первой непустой [vba]
Код
Sub tt() Dim d_ As Range Set d_ = Selection(1) If d_ <> "" Then Exit Sub With d_ r0_ = .Row r1_ = .End(xlDown).Row d_ = 1 .Resize(r1_ - r0_).DataSeries Rowcol:=xlColumns, Type:=xlLinear, Date:=xlDay, Step:=1, Trend:=False .Resize(r1_ - r0_).NumberFormat = "000" End With End Sub
Sub Макрос1() For i = 1 To 1000 If ActiveSheet.Cells(i, 1).Value <> "" Then Exit For ActiveSheet.Cells(i, 1).Value = i ActiveSheet.Cells(i, 1).NumberFormat = "000" Next i End Sub
[/vba]
Или например так:
[vba]
Код
Sub Макрос1() For i = 1 To 1000 If ActiveSheet.Cells(i, 1).Value <> "" Then Exit For ActiveSheet.Cells(i, 1).Value = i ActiveSheet.Cells(i, 1).NumberFormat = "000" Next i End Sub
Sub tt() Dim d_ As Range Set d_ = Selection(1) If d_ <> "" Then Exit Sub With d_ r0_ = .Row r1_ = .End(xlDown).Row n_ = r1_ - r0_ ar = .Resize(n_) .Resize(n_).NumberFormat = "@" For i = 1 To n_ ar(i, 1) = Format(i, "000") Next i .Resize(n_) = ar End With End Sub
[/vba]
Ну тады так [vba]
Код
Sub tt() Dim d_ As Range Set d_ = Selection(1) If d_ <> "" Then Exit Sub With d_ r0_ = .Row r1_ = .End(xlDown).Row n_ = r1_ - r0_ ar = .Resize(n_) .Resize(n_).NumberFormat = "@" For i = 1 To n_ ar(i, 1) = Format(i, "000") Next i .Resize(n_) = ar End With End Sub