VBA Excel - 将列值转换为另一列插入空白行
我想转换这些值。VBA Excel - 将列值转换为另一列插入空白行
假设在A1:A20
有20个值,在B1:B20
也有20个值。
我想以这样的方式来复制塔B的值这一结果应该是:
细胞A1
值为A1
,细胞A2
值为B1
,细胞A3
值为A2
,单元格A4值是B1
。
同样在单元格A40
中的值是B20
。 (为了更清晰,我附上了图像)
所以这里的第一步是在列A 中交替插入blanck单元,并且在该空白单元格中复制列B的值。
为了更清楚,请找图像
。
总是张贴你先试过的东西!
Sub test()
Application.ScreenUpdating = False
Dim i As Long
For i = 2 To 20 Step 2
Sheets("Sheet1").Range("A" & i).EntireRow.Insert
Next i
Sheets("Sheet1").Range("B1:B40").copy
Sheets("Sheet1").Range("A2").PasteSpecial Paste:=xlPasteAll, SkipBlanks:=True
Application.ScreenUpdating = True
End Sub
非常感谢。我试过了,它的工作正常。 B列电池的颜色为绿色。那么是否有可能让B的属性(lyk bkgrnd color,font color ..)也被复制? – user8731454
我已经更新了代码,基本上你需要使用xlPasteAll来粘贴不同于只粘贴值的初始代码的所有内容。 –
@Downvoter - 请留下评论,因为它会帮助我正确地塑造我的答案。 –
也许这不是你正在寻找的,但另一种解决方案是使用像下面的常规公式。
=IFERROR(INDEX($A$2:$B$9,ROUNDDOWN(ROW()/2,0),ISODD(ROW())+1),"")
但是,这不会给你正在寻找的颜色。只是抛出另一种方法供您参考。
感谢您的回复..但我想使用单元格的值,因为它是..意味着需要字体颜色,细胞bkgrnd的颜色也。这是客户的要求。 – user8731454
图,所以这只是供您参考。 VBA是您实现目标的唯一途径。 – ian0411
听起来不错。你为什么不开枪呢,然后回过头来解决你的任何具体问题,那么我们很乐意帮助你。 –
好主意..但这里有些技术人员没有询问任何历史就解决了我的问题。 3人为他们欢呼! – user8731454