Vet inte om detta hjälper dig, men denna kod jag använder hämtar värde ur en stängd arbetsbok & klistrar in värde i bladet jag arbetar i.
Jag söker inte efter nåt speciellt utan bara kopierar valda celler, men det kanske går att modda så att det fungerar .
Jag använder inte sökning månad för månad i koden utan tar rubbet.
Sub DataFiler()
Dim Sökväg As String
Dim Fil As String
Dim i As Integer
Dim wb As Workbook
Application.ScreenUpdating = False
Sökväg = "F:\12\*.xls"
i = 1
Fil = Dir(Sökväg)
Do While Fil <> ""
Set wb = Workbooks.Open(Left(Sökväg, InStr(1, Sökväg, "*") - 1) & Fil)
' Set wb = Workbooks.Open(Fil)
'Här hoppar man till angiven månad
'GoTo X
If Range("V8") = 13 Then GoTo X
If Range("V8") = 1 Then GoTo Ex1
If Range("V8") = 2 Then GoTo Ex2
If Range("V8") = 3 Then GoTo Ex3
If Range("V8") = 4 Then GoTo Ex4
If Range("V8") = 5 Then GoTo Ex5
If Range("V8") = 6 Then GoTo Ex6
If Range("V8") = 7 Then GoTo Ex7
If Range("V8") = 8 Then GoTo Ex8
If Range("V8") = 9 Then GoTo Ex9
If Range("V8") = 10 Then GoTo Ex10
If Range("V8") = 11 Then GoTo Ex11
If Range("V8") = 12 Then GoTo Ex12
X:
'Januari
Ex1:
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 4) = wb.Worksheets("Blad3").Range("A3")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 2) = wb.Worksheets("Blad1").Range("A2")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 3) = wb.Worksheets("Blad1").Range("B2")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 1) = wb.Worksheets("Blad1").Range("F2")
If Range("V8") = 13 Then GoTo Ex2
GoTo 100
'Februari
Ex2:
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 5) = wb.Worksheets("Blad3").Range("B3")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 2) = wb.Worksheets("Blad1").Range("A2")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 3) = wb.Worksheets("Blad1").Range("B2")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 1) = wb.Worksheets("Blad1").Range("F2")
If Range("V8") = 13 Then GoTo Ex3
GoTo 100
'Mars
Ex3:
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 6) = wb.Worksheets("Blad3").Range("C3")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 2) = wb.Worksheets("Blad1").Range("A2")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 3) = wb.Worksheets("Blad1").Range("B2")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 1) = wb.Worksheets("Blad1").Range("F2")
If Range("V8") = 13 Then GoTo Ex4
GoTo 100
'April
Ex4:
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 7) = wb.Worksheets("Blad3").Range("D3")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 2) = wb.Worksheets("Blad1").Range("A2")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 3) = wb.Worksheets("Blad1").Range("B2")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 1) = wb.Worksheets("Blad1").Range("F2")
If Range("V8") = 13 Then GoTo Ex5
GoTo 100
'Maj
Ex5:
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 8) = wb.Worksheets("Blad3").Range("E3")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 2) = wb.Worksheets("Blad1").Range("A2")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 3) = wb.Worksheets("Blad1").Range("B2")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 1) = wb.Worksheets("Blad1").Range("F2")
If Range("V8") = 13 Then GoTo Ex6
GoTo 100
'Juni
Ex6:
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 9) = wb.Worksheets("Blad3").Range("F3")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 2) = wb.Worksheets("Blad1").Range("A2")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 3) = wb.Worksheets("Blad1").Range("B2")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 1) = wb.Worksheets("Blad1").Range("F2")
If Range("V8") = 13 Then GoTo Ex7
GoTo 100
'Juli
Ex7:
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 10) = wb.Worksheets("Blad3").Range("G3")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 2) = wb.Worksheets("Blad1").Range("A2")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 3) = wb.Worksheets("Blad1").Range("B2")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 1) = wb.Worksheets("Blad1").Range("F2")
If Range("V8") = 13 Then GoTo Ex8
GoTo 100
'Augusti
Ex8:
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 11) = wb.Worksheets("Blad3").Range("H3")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 2) = wb.Worksheets("Blad1").Range("A2")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 3) = wb.Worksheets("Blad1").Range("B2")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 1) = wb.Worksheets("Blad1").Range("F2")
If Range("V8") = 13 Then GoTo Ex9
GoTo 100
'September
Ex9:
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 12) = wb.Worksheets("Blad3").Range("I3")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 2) = wb.Worksheets("Blad1").Range("A2")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 3) = wb.Worksheets("Blad1").Range("B2")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 1) = wb.Worksheets("Blad1").Range("F2")
If Range("V8") = 13 Then GoTo Ex10
GoTo 100
'Oktober
Ex10:
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 13) = wb.Worksheets("Blad3").Range("J3")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 2) = wb.Worksheets("Blad1").Range("A2")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 3) = wb.Worksheets("Blad1").Range("B2")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 1) = wb.Worksheets("Blad1").Range("F2")
If Range("V8") = 13 Then GoTo Ex11
GoTo 100
'November
Ex11:
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 14) = wb.Worksheets("Blad3").Range("K3")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 2) = wb.Worksheets("Blad1").Range("A2")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 3) = wb.Worksheets("Blad1").Range("B2")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 1) = wb.Worksheets("Blad1").Range("F2")
If Range("V8") = 13 Then GoTo Ex12
GoTo 100
'December
Ex12:
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 15) = wb.Worksheets("Blad3").Range("L3")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 2) = wb.Worksheets("Blad1").Range("A2")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 3) = wb.Worksheets("Blad1").Range("B2")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 1) = wb.Worksheets("Blad1").Range("F2")
ThisWorkbook.Worksheets("Sheet1").Cells(5 + i, 16) = wb.Worksheets("Blad3").Range("M3")
100:
wb.Close False
Fil = Dir
Application.StatusBar = i & " : " & Fil
i = i + 1
Loop
Application.StatusBar = False
Application.ScreenUpdating = True
Range("V8").Select
End Sub