首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用VBA过滤和移动数据

使用VBA过滤和移动数据
EN

Stack Overflow用户
提问于 2021-10-12 01:08:34
回答 2查看 39关注 0票数 1

我正在尝试找到一种方法来快速过滤和剪切单元格的范围到另一个工作表

准确地说:

代码语言:javascript
运行
复制
Private Sub CommandButton1_Click()

Dim rng As Range, cell As Range

Set rng = Range("a2:a100")

For Each cell In rng

If Sheet1.Range("a2").Offset(1) = "DE" Then
Sheet1.Range("b2:f2").Cut Sheet2.Range("b2:f2")

End If
Next cell
End Sub

我知道这段代码仅限于Cell(A2)。

我需要我的代码去通过范围("a2:a100"),如果它包含值Exp。"DE“将范围(b2:f2)剪切到下一页

EXP.

如果单元格a2包含"DE“,则需要切割范围("b2:f2");如果单元格a5包含"DE”,则需要切割范围("b5:f5")。

EN

Stack Overflow用户

发布于 2021-10-12 02:31:03

如果您需要剪切和粘贴,很好,只需知道您将需要选择粘贴目标工作表,然后再次选择源工作表。但是,如果您只对单元格的内容感兴趣,那么“传输”值会更简单、更快,如下所示。

代码语言:javascript
运行
复制
Private Sub CommandButton1_Click()

Dim rng As Range, cell As Range
Dim TargetRow As Long

Set rng = Range("a2:a100")

    For Each cell In rng
        If cell = "DE" Then
            TargetRow = cell.Row
            Worksheets("Sheet2").Range("B" & TargetRow & ":F" & TargetRow).Value2 = Worksheets("Sheet1").Range("B" & TargetRow & ":F" & TargetRow).Value2
            Worksheets("Sheet1").Range("B" & TargetRow & ":F" & TargetRow).ClearContents
        End If
    Next cell
    
End Sub
票数 0
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69533996

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档