Excel VBA将选定的数据添加到另一个工作表上的行

我对 Excel VBA 非常陌生。我在名为“摘要”的工作表中的单元格 A21:D21 中有一个带有 4 个下拉列表的工作表。我正在尝试创建一个按钮函数,当单击该函数时,会将下拉列表中的 4 个选定值插入到另一个名为“数据”的工作表上的新行(最好是第一个空行)中。

这是我目前编写的函数:

Sub Add_Button()
    Summary.Range("A21:D21").Copy
    Data.Range("A2:D2").Rows("1:1000").Insert Shift:=xlDown
End Sub

这是我得到的错误:

Excel VBA将选定的数据添加到另一个工作表上的行

任何帮助将不胜感激!

l239984503 回答:Excel VBA将选定的数据添加到另一个工作表上的行

你的问题不是很清楚,你没有回答澄清问题...

如果您想在“数据”表的末尾插入,请使用下一个代码:

        xx = toString( '-' + toString( x ) + '-' );
        z = i.replace( /\-1\-/gi,xx );

如果您想在特定行上插入复制的范围,请使用下一个变体:

Sub Add_Button()
  Dim Summary As Worksheet,data As Worksheet,lastRD As Long
    
    Set Summary = Worksheets("Summary") 'use here your real sheet
    Set data = Worksheets("Data")       'use here your real sheet             
    lastRD = data.Range("A" & data.rows.count).End(xlUp).row + 1 'last empty row
    
    data.Range("A" & lastRD).Resize(1,4).Value2 = Summary.Range("A21:D21").Value2
End Sub

要将值粘贴到第一个空行中,请使用此行:

Sub Add_ButtonX()
  Dim Summary As Worksheet,insertRow As Long
    
    Set Summary = Worksheets("Summary") 'use here your real sheet
    Set data = Worksheets("Data")       'use here your real sheet
    insertRow = 20  'rows on which to insert copied data
    Summary.Range("A21:D21").Copy
    data.Range("A" & insertRow).Insert Shift:=xlDown
End Sub
本文链接:https://www.f2er.com/1246.html

大家都在问