so here's an interesting issue i'm running into.

I am running code from a module onto different worksheets in my workbook. Currently the code is all running on a single worksheet and I've been using Activecell.offset function to insert information from a userform to the worksheet.

currently if I try to do:
Activecell.offset(1,0).entirerow.Insert
I get the error "INSERT METHOD OF RANGE CLASS FAILED"
other forum posts suggest that this is a way of inserting another row. Likewise if I just do:
Activecell.offset(1,0).select
it does select the correct row to insert below...

Am I missing something here? it can't be very difficult, maybe just another set of eyes will help.
Thanks

Case "0b-Won-Not Started"
                  Set finalrange = ActiveSheet.Range("PW").Offset(1, 0)
                  finalrange.Cells(1, 1).Select
                  If finalrange.Cells(1, 1).Value <> "" Then
                  Set dMyRange = ActiveSheet.Range("PW").End(xlDown)
                  dMyRange.Offset(1, 0).Select
                  Else
                  finalrange.Select
                  ActiveCell.Select
                  End If
                  ActiveCell.Value = UserForm1.TextBox_UniqueID.Value
                  ActiveCell.Offset(0, 1).Value = UserForm1.ComboBox_Theatre.Value
                  ActiveCell.Offset(0, 2).Value = UserForm1.ComboBox_Vertical.Value
                  ActiveCell.Offset(0, 3).Value = UserForm1.ComboBox_BOE.Value
                  ActiveCell.Offset(0, 4).Value = UserForm1.TextBox_Customer.Text
                  ActiveCell.Offset(0, 5).Value = UserForm1.TextBox_Project_Name.Text
                  ActiveCell.Offset(0, 6).Value = Round(UserForm1.TextBox_VSD_Hours.Text / 13)
                  ActiveCell.Offset(0, 7).Value = Round(UserForm1.TextBox_VSD_Hours.Text / 13)
                  ActiveCell.Offset(0, 8).Value = Round(UserForm1.TextBox_VSD_Hours.Text / 13)
                  ActiveCell.Offset(0, 9).Value = Round(UserForm1.TextBox_VSD_Hours.Text / 13)
                  ActiveCell.Offset(0, 10).Value = Round(UserForm1.TextBox_VSD_Hours.Text / 13)
                  ActiveCell.Offset(0, 11).Value = Round(UserForm1.TextBox_VSD_Hours.Text / 13)
                  ActiveCell.Offset(0, 12).Value = Round(UserForm1.TextBox_VSD_Hours.Text / 13)
                  ActiveCell.Offset(0, 13).Value = Round(UserForm1.TextBox_VSD_Hours.Text / 13)
                  ActiveCell.Offset(0, 14).Value = Round(UserForm1.TextBox_VSD_Hours.Text / 13)
                  ActiveCell.Offset(0, 15).Value = Round(UserForm1.TextBox_VSD_Hours.Text / 13)
                  ActiveCell.Offset(0, 16).Value = Round(UserForm1.TextBox_VSD_Hours.Text / 13)
                  ActiveCell.Offset(0, 17).Value = Round(UserForm1.TextBox_VSD_Hours.Text / 13)
                  ActiveCell.Offset(1, 0).EntireRow.insert