首页 文章

Excel VBA - 搜索范围 - 如果单元格包含文本然后复制单元格 - 粘贴偏移2,1

提问于
浏览
0

我正在尝试简化我每周工作的excel表 .

我正在尝试创建一个可以执行以下操作的VBA宏:

  • 搜索包含文本的任何单元格的C列,如果空白则忽略它

  • 如果在单元格中找到文本,则复制该单元格,粘贴内容偏移量(2,1)

任何人都可以给我任何帮助,我将不胜感激 . 我已经搜索了其他宏,并试图修改它们供我使用但无济于事 .

**Example Before Macro**
  A       B       C       D       E
1                 Hi
2                 Test
3
4                 Done
5
6

**Example After Macro Has Been Run**
  A       B       C       D       E
1                 Hi
2                 Test
3                         Hi
4                 Done    Test
5
6                         Done

现行代码:

Sub CopyC()  
  Dim SrchRng As Range, cel As Range 
  Set SrchRng = Range("C1:C10") 

  For Each cel In SrchRng 
    If InStr(1, cel.Value) > 0 Then 
      cel.Offset(2, 1).Value = "-" 
    End If 
  Next cel 
End Sub

1 回答

  • 1

    你很关闭:

    Sub CopyC()
    Dim SrchRng As Range, cel As Range
    Set SrchRng = Range("C1:C10")
    For Each cel In SrchRng
        If cel.Value <> "" Then
            cel.Offset(2, 1).Value = cel.Value
        End If
    Next cel
    End Sub
    

    我在D栏中添加了1-6,表明它忽略了空白

相关问题