0
我已經構建了幾個不同行(相同列)的模板,我希望通過更改單元格值來插入和插入這些模板。基於單元格值插入數組作爲模板
因此,如果您將A1更改爲temp1的值,它將從另一張工作表插入「temp1」模板數組(100行)的行/值,並且如果將A101更改爲temp2的值,則會插入行/值另一張紙上的「temp2」模板數組(25行)。
我已經構建了幾個不同行(相同列)的模板,我希望通過更改單元格值來插入和插入這些模板。基於單元格值插入數組作爲模板
因此,如果您將A1更改爲temp1的值,它將從另一張工作表插入「temp1」模板數組(100行)的行/值,並且如果將A101更改爲temp2的值,則會插入行/值另一張紙上的「temp2」模板數組(25行)。
您要求插入行,而不是清理工作表然後粘貼行。
所附Worksheet_Change即使代碼是如何完成您指定的內容的示例...
Private Sub Worksheet_Change(ByVal Target As Range)
Dim srcSht As Worksheet
Dim lstRow As Long, lstCol As Long
Dim srcRng As Range
Dim tarRng As Range
If Target.Address = "$A$1" Then
Set tarRng = ActiveSheet.Range("A2")
If Target.Value = "temp1" Then Set srcSht = Worksheets("Shtemp1")
If Target.Value = "temp2" Then Set srcSht = Worksheets("Shtemp2")
If srcSht Is Nothing Then Exit Sub
lstRow = srcSht.Range("A" & srcSht.Rows.Count).End(xlUp).Row
Set srcRng = srcSht.Range(srcSht.Cells(1, 1), srcSht.Cells(lstRow, 1))
srcRng.EntireRow.Copy
tarRng.EntireRow.Insert shift:=xlDown
End If
Set tarRng = Nothing
Set srcRng = Nothing
Set srcSht = Nothing
End Sub
下面是Shtemp1的屏幕帽...
。 ..和一個Shtemp2的屏幕蓋...
當「temp1目錄」鍵入到附帶的代碼工作表的單元格A1,你得到這個...
...更改單元格A1到「TEMP2」,你得到這個。 ...
[好](http://stackoverflow.com/help/how-to-ask)。您可能想查看「工作表變更」事件。 – BruceWayne