Private Sub Worksheet_Change(ByVal Target As Range)
Dim I&
'格式设置 ↓第2列开始 ↓第3行开始 ↓第10行终止
If Target.Column = 2 And Target.Row >= 3 And Target.Row <= 10 And Target.Value <> "" Then
I = Target.Row - 1 '当前行的上一行
Range("C" & I).AutoFill Destination:=Range("C" & I).Resize(2, 1), Type:=xlFillValues '不带格式复制公式
Range("E" & I).AutoFill Destination:=Range("E" & I).Resize(2, 1), Type:=xlFillValues
Range("F" & I).AutoFill Destination:=Range("F" & I).Resize(2, 1), Type:=xlFillValues
Range("G" & I).AutoFill Destination:=Range("G" & I).Resize(2, 1), Type:=xlFillValues
'Range("G" & I).AutoFill Destination:=Range("G" & I).Resize(2, 1) '要带格式复制公式
Cells(I + 1, 1) = I '自动编号语句,如果不需要编号可直接删除此句
Range("a" & Target.Row & ":h" & Target.Row).Borders.LineStyle = 1 '表示加表格边框的列范围
Range("a" & Target.Row & ":h" & Target.Row).Font.Name = "黑体" '字体
Range("a" & Target.Row & ":h" & Target.Row).HorizontalAlignment = 3 '水平居中
Range("a" & Target.Row & ":h" & Target.Row).Font.ColorIndex = 3 '字体颜色红色
Range("a" & Target.Row & ":h" & Target.Row).VerticalAlignment = xlCenter '垂直居中
End If
End Sub |