title: VBA - How to copy cells between excel workbooks (where workbook names change)?
body: <p>I am looking for advice on how to write a macro that does the below. I imagine its easy to do, but I can't figure it out. Thanks in advance!</p>
  
  <p>START</p>
  
  <ol>
  <li>In the active sheet (in the workbook I am running this macro in [Title changes but same formatting each time]), copy cell B9. Paste in column A on the next blank row of the other workbook I am using [Can have the same title every time I run this process, or just be the only other workbook open]</li>
  <li>In the active sheet (in the workbook I am running this macro in), copy cell B8. Paste in column B of the row identified above.</li>
  <li>In the active sheet (in the workbook I am running this macro in), copy cell B12. Paste in column C of the row identified above.</li>
  <li>In the active sheet (in the workbook I am running this macro in), copy cells A17:E17. Paste in D:H of the row identified above.</li>
  <li>In the active sheet (in the workbook I am running this macro in), copy cells A17:E17. Paste in D:H of the row identified above.</li>
  <li>In the active sheet (in the workbook I am running this macro in), copy cells G17:N17. Paste in I:P of the row identified above.</li>
  </ol>
  
  <p>END</p>
  
  <p>Given my lack of vba coding ability I'm trying to record a macro and then adjust. I've tried as many options as I can find on google. The below seems to be the best, but doesn't work. (NB: I start with B9 from point 1 above selected). </p>
  
  <pre><code>Sub Copy_Timesheet()
  '
  ' Copy_Timesheet Macro
  '
  
  '
  Selection.Copy
  Windows("WorkbookB").Activate
  Find_Blank_Row()
  Dim BlankRow As Long
  BlankRow = Range("A65536").End(xlUp).Row + 1
  Cells(BlankRow, 1).Select
  ActiveCell.Offset(1, 0).Range("A1").Select 
  Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
  :=False, Transpose:=False
  ThisWorkbook.Activate
  ActiveCell.Offset(3, 0).Range("A1").Select
  Application.CutCopyMode = False
  Selection.Copy
  Windows("WorkbookB").Activate
  ActiveCell.Offset(0, 1).Range("A1").Select
  Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
  :=False, Transpose:=False
  ThisWorkbook.Activate
  ActiveCell.Offset(-4, 0).Range("A1").Select
  Application.CutCopyMode = False
  Selection.Copy
  Windows("WorkbookB").Activate
  ActiveCell.Offset(0, 1).Range("A1").Select
  Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
  :=False, Transpose:=False
  ThisWorkbook.Activate
  ActiveCell.Offset(9, -1).Range("A1:E1").Select
  Application.CutCopyMode = False
  Selection.Copy
  Windows("WorkbookB").Activate
  ActiveCell.Offset(0, 1).Range("A1").Select
  Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
  :=False, Transpose:=False
  ThisWorkbook.Activate
  ActiveCell.Offset(0, 6).Range("A1:H1").Select
  Application.CutCopyMode = False
  Selection.Copy
  Windows("WorkbookB").Activate
  ActiveCell.Offset(0, 5).Range("A1").Select
  Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
  :=False, Transpose:=False
  End Sub
  </code></pre>