Excel VBA 将所选数据添加到另一行 Sheet
Excel VBA Add Data Selected to Row on Another Sheet
我是 Excel VBA 的新手。我有一个 sheet,在名为“摘要”的 sheet 单元格 A21:D21 中有 4 个下拉列表。我正在尝试创建一个按钮功能,当单击该功能时,将下拉列表中的 4 个选定值插入到另一个名为“数据”的 sheet 上的新行(最好是第一个空行)。
这是我目前写的函数:
Sub Add_Button()
Summary.Range("A21:D21").Copy
Data.Range("A2:D2").Rows("1:1000").Insert Shift:=xlDown
End Sub
这是我收到的错误:
如有任何帮助,我们将不胜感激!
你的问题不是很清楚,你没有回答澄清问题...
如果您想在“数据”的末尾插入sheet,请使用下一个代码:
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, data 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
要将值粘贴到第一个空行,请使用此行:
Sub Add_ButtonInsEmptyRow()
Dim Summary As Worksheet, data As Worksheet, frstER As Long
Set Summary = Worksheets("Summary") 'use here your real sheet
Set data = Worksheets("Data") 'use here your real sheet
frstER = data.Range("A2").End(xlDown).row + 1 'first empty row
data.Range("A" & frstER).Resize(1, 4).Value2 = Summary.Range("A21:D21").Value2
End Sub
我是 Excel VBA 的新手。我有一个 sheet,在名为“摘要”的 sheet 单元格 A21:D21 中有 4 个下拉列表。我正在尝试创建一个按钮功能,当单击该功能时,将下拉列表中的 4 个选定值插入到另一个名为“数据”的 sheet 上的新行(最好是第一个空行)。
这是我目前写的函数:
Sub Add_Button()
Summary.Range("A21:D21").Copy
Data.Range("A2:D2").Rows("1:1000").Insert Shift:=xlDown
End Sub
这是我收到的错误:
如有任何帮助,我们将不胜感激!
你的问题不是很清楚,你没有回答澄清问题...
如果您想在“数据”的末尾插入sheet,请使用下一个代码:
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, data 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
要将值粘贴到第一个空行,请使用此行:
Sub Add_ButtonInsEmptyRow()
Dim Summary As Worksheet, data As Worksheet, frstER As Long
Set Summary = Worksheets("Summary") 'use here your real sheet
Set data = Worksheets("Data") 'use here your real sheet
frstER = data.Range("A2").End(xlDown).row + 1 'first empty row
data.Range("A" & frstER).Resize(1, 4).Value2 = Summary.Range("A21:D21").Value2
End Sub