OK, how about:
Private Sub CommandButton1_Click()
Const lLEFT_COL=2
Const lRIGHT_COL=18
Const lSOURCE_ROW=46
Dim vCheckValue as Variant
Dim wbkTargetBook As Workbook
Dim wshSourceSheet As Worksheet
Dim wshTargetSheet As Worksheet
Dim rngMatchValue As Range
Dim lWriteRow As Long
Set wshSourceSheet=ActiveSheet
vCheckValue=wshSourceSheet.Cells(42,2).Value
Set wbkTargetBook = Workbooks.Open ("G:\VFast.Temporar\3 Göteborg\01 Gemensamt\!NY_Mappstruktur_Gbg\Vfast.o35.Gbg.FF-PL\04_Personal\10_Sommarjobb\2011\Analys\Jämförelse\Projektsammanställning.xls")
Set wshTargetSheet= wbkTargetBook.Sheets("Blad1")
With wshTargetSheet
lWriteRow=.Cells(.Rows.Count, lLEFT_COL).End(xlUp).Row
Set rngMatchValue=.Columns(2).Find(vCheckValue, Lookin:=xlValues, Lookat:=xlWhole)
If Not rngMatchValue Is Nothing Then
lWriteRow=rngMatchValue.Row
End If
.Range(.Cells(lWriteRow,lLEFT_COL), .Cells(lWriteRow, lRIGHT_COL)).Value=wshSourceSheet.Range(wshSourceSheet.Cells(lSOURCE_ROW,lLEFT_COL),wshSourceSheet.Cells(lSOURCE_ROW,lRIGHT_COL)).Value
End With
wshTargetSheet.Cells(1,1).Select
End Sub
Bookmarks