繁体   English   中英

如果另一列有数据,则将一个单元格复制到列中的空白单元格

[英]Copy one cell to blank cells in a column, if another column has data

我对此很陌生,但渴望学习:)

不幸的是,过去几天我一直在努力解决以下问题。

我需要将单个单元格 (J2) 的值复制到 A 列,从单元格 A3 到最后一个需要的单元格,具体取决于 B 列中包含数据的最后一行(这将是动态的),但这只有在单元格是空白的。 在附带的示例中,我需要将 J2 粘贴到 A 列的第 11 到 15 行中。

我尝试了各种方法,但我似乎无法结合仅针对 A 列中的空白单元格复制单个值(不是范围),具体取决于 B 列中是否有数据。

有任何想法吗?

谢谢队友!

我试过下面的代码,但它不工作。

Sub copyLC()

Range("I2").Copy Range("A3:A" & Range("B" & Rows.Count).End(xlUp).Row)

Range("B3:H" & Cells(Rows.Count, "B").End(3).Row).Copy Cells(Rows.Count, "B").End(3)(2)

Dim lastRow1 As Long
Dim lastRow2 As Long
Dim m As Long
Dim r As Long

lastRow1 = Sheets("equip_hlp").Cells(Rows.Count, 1).End(xlUp).Row
Sheets("equip_hlp").Range("J3:J" & lastRow1).Copy

lastRow2 = Sheets("equip_hlp").Cells(Rows.Count, "I").End(xlUp).Row + 1
Sheets("equip_hlp").Range("I" & lastRow2).PasteSpecial Paste:=xlPasteValues

Dim lastRow As Long
lastRow = Cells(Rows.Count, 2).End(xlUp).Row
Dim i As Long
For i = 3 To lastRow Step 1
    If Cells(i, 1).Value = "" And Cells(i, 2).Value <> "" Then Cells(i, 1).Value = Cells(2, "J").Value

Range("B3:H" & Cells(Rows.Count, "B").End(3).Row).Copy Cells(Rows.Count, "B").End(3)(2)

Dim lastRow1 As Long
Dim lastRow2 As Long
Dim m As Long
Dim r As Long

lastRow1 = Sheets("equip_hlp").Cells(Rows.Count, 1).End(xlUp).Row
Sheets("equip_hlp").Range("K3:K" & lastRow1).Copy

lastRow2 = Sheets("equip_hlp").Cells(Rows.Count, "I").End(xlUp).Row + 1
Sheets("equip_hlp").Range("I" & lastRow2).PasteSpecial Paste:=xlPasteValues

Dim lastRow As Long
lastRow = Cells(Rows.Count, 2).End(xlUp).Row
Dim i As Long
For i = 3 To lastRow Step 1
    If Cells(i, 1).Value = "" And Cells(i, 2).Value <> "" Then Cells(i, 1).Value = Cells(2, "J").Value


End Sub

所以您想从第 3 行循环到 lastRow 以获取单个列,并且在单元格为空的地方粘贴一个值?

下面的模型假设您实际上可以找到最后一行(例如,B 列中的最后一行没有空白)

dim lastRow as long
lastRow = cells(rows.count, 2).end(xlup).row
dim i as long
for i = 3 to lastRow Step 1
    if cells(i,1).value = "" and cells(i,2).value <> "" then cells(i,1).value = cells(2,"J").value
next i

希望这对您来说是一个很好的起点……根据列 B (2) 动态查找最后一行。

我在If-statement中为 B 列添加了一个检查以获取数据,但如果您使用的是连续数据集,则可能没有必要,因此最后一行使用 B。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM