我要做的是以下内容:
A栏
...对于空白区域,C" ff,gg,tt"列中的值与空白水平对齐,我需要剪切并粘贴到A列中。适用于整个表格,可能有400行。
所以我想说:
"如果A列有一个空白单元格,则从C列和#34中剪切并粘贴相应单元格的值;
循环浏览文档
答案 0 :(得分:1)
如果值不是工作表上的公式,这将有效:
Sub test()
Dim i As Long
Dim toprow As Long
toprow = 1 'Change this to whatever the top row is
For i = toprow To Cells(Rows.Count, 1).End(xlUp).Row
If Cells(i, 1) = "" Then
Cells(i, 3).Copy Cells(i, 1)
End If
Next i
End Sub
否则,您需要将代码修改为pastespecial值
答案 1 :(得分:0)
尝试这个简单的apporoach而无需代码:
1.插入一列A并输入自动行号1,2,3 ... n
2.按列B排序所有列,以对第一行中的所有空格进行分组。
3.一次性将所有列C值复制到Clumn B.
按A列重新排序列
删除A栏
答案 2 :(得分:0)
如果您在A列和B列的所有值上运行此操作,并且您希望避免循环,则可以PasteSpecial
和SkipBlanks
。您不需要使用代码,但如果您这样做,则使用:
Columns(2).Copy
Columns(1).PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:=True, Transpose:=False
Columns(2).ClearContents