这里对VBA全新;如果在其他地方得到回答或者看起来非常容易,我会道歉 - 我已经看过,找不到任何与我想要完成的事情相符的例子。
我有一个ActiveX命令按钮,当我点击它时,我希望它将数据从C18:C123复制到相应的列,该列具有匹配的标题名称,来自复制的数据(C17)粘贴值和源格式。基本上,我不想复制数据,直到单击“更新”命令按钮,并且它需要能够将粘贴的数据的位置与C17中数据源的名称相匹配。这也是在同一工作簿中的同一工作表上复制和粘贴。
注意:我正在处理的数据本质上是敏感的,我无法提供一个工作示例,但如果需要,可以创建一个单独的表格来说明这个问题。
答案 0 :(得分:0)
右键单击activeX按钮,单击视图代码并将以下代码粘贴到那里
'This is the location of all the headers one of which is the header in C17
Set lookup_rng = Range("H17:Q17")
For Each cell In lookup_rng
If cell.Value = Range("C17").Value Then
Range("C18:C123").Copy
cell.Offset(1, 0).Select
Selection.PasteSpecial Paste:=xlPasteValues
Selection.PasteSpecial Paste:=xlPasteFormats
Application.CutCopyMode = False
End If
Next cell