I have a very simple piece of VBA code to copy the value of a cell, open another workbook, and paste that cell value into the newly opened workbook. It works perfectly in a normal module. But when I run the code in the ThisWorkbook module, for the purpose of triggering it when the file is saved, the other workbook will not open. Simpler macros like opening a MsgBox work fine in ThisWorkbook, however. Another weird thing is that the code DOES work in ThisWorkbook if I am viewing the code. Anyone know why this might be happening? I'm ruing Excel 2010.
Code is below:
Option Explicit
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim rangetocopy As String
Dim w1 As Workbook
Dim w2 As Workbook
Set w1 = ActiveWorkbook
Calculate
rangetocopy = w1.Sheets("Reference Data").Range("F10").Value
Set w2 = Workbooks.Open("C:Usersuser1DocumentsTo-Do.xlsm")
w2.Worksheets("Masterlist").Activate
Range("A1").Select
Selection.End(xlDown).Select
Selection.End(xlDown).Select
Selection.End(xlDown).Select
Selection.End(xlUp).Select
ActiveCell.Offset(1, 0).Range("A1").Select
Selection.Value = rangetocopy
w1.Worksheets("To-do List").Activate
End Sub
Any thoughts?
