【问题标题】:How to copy a column if the criteria is met within the same worksheet如果在同一工作表中满足条件,如何复制列
【发布时间】:2020-07-20 00:33:05
【问题描述】:

我正在尝试根据 C 中的条件将 B 列复制到 E 列。但是,我似乎无法弄清楚如何将数据复制到匹配的行中。

例如,我希望它像这样执行{匹配列 B 到 E 中的相应文本 if column (C=x)}

列 > A |乙| C | D | E


         A   X       A
         B   Y
         C   X       C

这就是我所拥有的

Dim x As Integer
Dim textSG As String
Dim erow As Long

x = 3 
erow = 0

Do while Worksheet.Cell(x, 3) <> ""    
    If InStr ((Worksheet.Cells(x, 3)),"X" > 0 Then    
        textSG = Worksheet.Cells(x, 2)    
        erow = erow + 3    
        Worksheet.Cells(erow, 5) = textSG
    End if 
    x = x + 1 
Loop

【问题讨论】:

    标签: excel vba copy conditional-statements criteria


    【解决方案1】:

    请试试这个代码。我认为它符合您的意图。

    Dim R       As Long
    
    For R = 3 To Cells(Rows.Count, 3).End(xlUp).Row
        ' case insensitive comparison
        If StrComp(Trim(Cells(R, 3).Value), "x", vbTextCompare) = 0 Then
            Cells(R, 5).Value = Cells(R, 2).Value
        End If
    Next R
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-04-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-07-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多