'How to paste values in column when it is empty and paste values in column to the right when it is not empty?

I am currently working on Excel VBA.

I have 2 tabs. The 1st Tab name is "Data"(Data gets pulled from server) and 2nd Tab name is "Months".

I would like to copy the Column entries from the "Data" tab over to the specific Column in the "Months" tab. But when the new month data comes I would like to do the same method but offset the copy range each time when it is not empty by 1.

Example below.

Data Tab

Column A
45
65
78
99

The above 4 rows of data for Column A change each month.

Below is the Months Tab to paste it in.

    A              B             C             D             E            F         G
2022/01/31  |  2022/02/28 | 2022/03/31  |  2022/04/30 | 2022/05/31  | Total YTD  |
 26         |             |             |             |             |    26      |
 74         |             |             |             |             |    74      |
 87         |             |             |             |             |    87      |
 98         |             |             |             |             |    98      |

I would like to paste Column A from Data tab numbers into Column B from Months Tab but the code should start with Column A, if Column A is empty then paste the data otherwise move to Column B, if column B is empty, paste the data. If Column B is not empty, move over to Column C and so forth.

This is my code thus far, but it only pastes the data in column G. Any suggestions or help would be appreciated.

 Sub Copy_total()
 '
 ' Copy_total Macro
 '
 ' Keyboard Shortcut: Ctrl+q
 '
 Application.ScreenUpdating = False
 Dim copySheet As Worksheet
 Dim pasteSheet As Worksheet

 Set copySheet = Worksheets("Data")
 Set pasteSheet = Worksheets("Months")

    copySheet.Range("A2:A5").Copy
       If pasteSheet.Cells(2, 1) = "" Then
           pasteSheet.Cells(2, 1).PasteSpecial xlPasteValues
       Else
          pasteSheet.Cells(2, Columns.Count).End(xlToLeft).Offset(0, 1).PasteSpecial 
           xlPasteValues
       End If

 Application.CutCopyMode = False
 Application.ScreenUpdating = True
 End Sub


Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source