gpt4 book ai didi

excel - 尝试根据标准将列中单元格的值移动到另一个

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

我在下面有这段代码,我想做什么搜索column D如果有 无值(value)然后取 column c 中的值并放入column D .

不幸的是,当我运行它时,它只会删除 C 列中的所有内容。

Sub CleanReportStep10() 
'align columns C and D realign columns by moving data from C to D'
Dim ws As Worksheet: Set ws = ThisWorkbook.Sheets("copied")
Dim i As Long

For i = 19 To ws.Range("C" & ws.Rows.Count).End(xlUp).Row
If ws.Range("D" & i) = "" Then
ws.Range("C" & i).Copy.Value = ws.Range("D" & i).Value
End If
Next i

End Sub

最佳答案

将您的声明更改为

ws.Range("D" & i).Value = ws.Range("C" & i).Value

在这种情况下,循环遍历一个范围可能会更快一些。此外,切换 ScreenUpdating从用户的角度使这个更清洁
Option Explicit

Sub Alternative()

Dim ws As Worksheet: Set ws = ThisWorkbook.Sheets("copied")
Dim LRow As Long, MyCell As Range

LRow = ws.Range("C" & ws.Rows.Count).End(xlUp).Row

Application.ScreenUpdating = False
For Each MyCell In ws.Range("C19:C" & LRow)
If MyCell.Offset(, 1) = "" Then MyCell.Offset(, 1).Value = MyCell.Value
Next MyCell
Application.ScreenUpdating = True

End Sub

关于excel - 尝试根据标准将列中单元格的值移动到另一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52877347/

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