gpt4 book ai didi

excel - VBA 循环和 if 语句问题

转载 作者:行者123 更新时间:2023-12-04 22:04:58 24 4
gpt4 key购买 nike

我对以下代码有疑问。
我希望将“U”列中值为“long”的每个单元格复制到新工作表中。
但我开发的代码只检索第一个结果。它确实在“U6”之后停止。
你能帮我么?

Sub reportcrea ()

Worksheets("TLM").Select
ActiveSheet.Range("U3").Select

Do
If ActiveCell.Value = "long" Then
ActiveCell.EntireRow.Select
Selection.Copy
Sheets("report").Select
Range("A" & Rows.Count).End(xlUp).Offset(1).Select
ActiveSheet.Paste
Application.CutCopyMode = False


Else
ActiveCell.Offset(1, 0).Select
End If

Loop Until IsEmpty(ActiveCell.Offset(1, 0))
End sub ()

最佳答案

我在这一行的代码中发现了一个错误:

Range("A" & Rows.Count).End(xlUp).Offset(1).Select
Offset接受两个参数,所以它应该是这样的:
Range("A" & Rows.Count).End(xlUp).Offset(1,0).Select

此外,您应该在粘贴剪贴板中的内容后立即取消 CutCopy 模式:
ActiveSheet.Paste                 'Paste is done here
Application.CutCopyMode = False 'This is a good practice

看看是否有帮助。另外, TLM 的截图表将帮助我们更准确地分析问题。

关于excel - VBA 循环和 if 语句问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25241998/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com