如果列“U”中的值等于“Y”,则向下移动列N-R中的单元格并在其间插入数据

时间:2016-10-27 16:32:59

标签: excel-vba vba excel

我已启动此代码,但似乎无法完成它。我发现了一些与之相关的文章,但没有任何东西让我在那里。

我的数据范围为N2:R50。在同一行中,如果列U中有文本“Y”,我需要在行下面插入空白单元格,并在新添加的行中的P列中写入“费用”。

到目前为止,我所使用的代码在N到R的列范围内输入一个新行,但它不会在每行下面放一行数据,而是将它们分组。

这是我的代码,希望我能很好地解释我的问题:

Sub res()
    Dim myLastRow As Long
    Dim myRow As Long

    Application.ScreenUpdating = False

'   Find last row with data in column A
    myLastRow = Cells(Rows.Count, "U").End(xlUp).Row

'   Loop through all rows in column A, starting at row 1
    For myRow = 1 To myLastRow
'       Check to see if value in column A is 0
        If Len(Cells(myRow, "U")) = 1 And Cells(myRow, "U") = "Y" Then
'           Insert blank columns in C and D
            Range(Cells(myRow, "N"), Cells(myRow, "R")).Insert      Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
         End If
    Next myRow

    Application.ScreenUpdating = True

End Sub

0 个答案:

没有答案