I have an Excel with the following structure which I want to convert to another structure:

![Tranpose Year from Columns to Rows](https://i.stack.imgur.com/sOTrH.png)

The actual file is much more complex than this - but I created this schematic to describe the essence of the problem. The file currently has around 5K rows, but it is expected to contain around 50K-100K entries. So, the solution should have a good performance.

What I have in mind is 

1. Copy columns from Customer Name to Unit Price and Year 1 Quantity & Year 1 TotalCost and paste it in the destination range and add a column year number and populate it with 1
2. Copy columns from Customer Name to Unit Price and Year 2 Quantity & Year 2 TotalCost
and populate year number column with 2

The questions I have are these:

1. Will this solution perform well?
2. Are there other solutions that avoids copying and pasting multiple times?
3. Is there a way to update the source range itself without pasting the data in a new destination range?

**Homework I have done:**

I did a google search and tried to read as many article as I could. I also read the following threads in Stackoverflow, but none of them has the answer that I am looking for

[Converting Excel rows to columns (smarter than transpose)](https://stackoverflow.com/questions/12372468/converting-excel-rows-to-columns-smarter-than-transpose)

[Transpose multiple rows to multiple columns](https://stackoverflow.com/questions/12097773/transpose-multiple-rows-to-multiple-columns)

[Excel Converting rows to columns with groups](https://stackoverflow.com/questions/11725698/excel-converting-rows-to-columns-with-groups)