ない事をやっているための最善の方法が、これはあなたを助ける、または少なくともあなたがやろうとしているもので、正しい方向にあなたを指している可能性があります。
表1がSheet1にあり、表2がSheet2にある場合、新しい行が表2に追加されると、次のコードでその名前がコピーされ、シート1の表1に3回貼り付けられます。上記のレコード、この場合はビルの日付。
下図に示すようにワークシートのChangeイベントにシート2の下に置き、次のコードを、:

コード:これは、以下の記事の複製であるよう
Private Sub Worksheet_Change(ByVal Target As Range)
LastRow = Sheet2.Cells(Sheet2.Rows.Count, "A").End(xlUp).Row 'check the last row on Sheet 2 Table 2
LastRow1 = Sheet1.Cells(Sheet1.Rows.Count, "A").End(xlUp).Row + 1 'Check the last row on Sheet1 Table 1
If Target.Row = LastRow Then 'if a new row is added to Table 2
Sheet1.Cells(LastRow1, Target.Column).Value = Target.Value 'copy their name to table 1 three times
Sheet1.Cells(LastRow1 + 1, Target.Column).Value = Target.Value
Sheet1.Cells(LastRow1 + 2, Target.Column).Value = Target.Value
Sheet1.Cells(LastRow1, 2).Value = Sheet1.Cells(LastRow1, 2).Offset(-3, 0).Value 'copy the Date from the date above on Sheet1
Sheet1.Cells(LastRow1 + 1, 2).Value = Sheet1.Cells(LastRow1 + 1, 2).Offset(-3, 0).Value
Sheet1.Cells(LastRow1 + 2, 2).Value = Sheet1.Cells(LastRow1 + 2, 2).Offset(-3, 0).Value
End If
End Sub
は、ルックス私はExcel 2016を使用していますが、おそらく私が認識していない機能が追加されている可能性があります:https://stackoverflow.com/questions/8087736/how-do-you-make-a-dynamically-sized-data表 – John
あなたは私たちによって望ましい結果を達成することができますこれがオプションの場合は、VBAを実行しますか?また、表3の日付の値はどこから得られますか? – Xabier
はい、VBAは受け入れられますが、VBAに精通していない人にこのワークブックを渡しているので、式が優先されます。私は12月12-14日を表1の日付範囲の例として使用し、表3の各従業員についてこの範囲を繰り返しました。 – John