Excel: Hent data fra lukket workbook, hvis det opfylder betingelse
Hej,Jeg har to regneark (Jobrotation og Pnumre), fra Pnumre ønsker jeg at hente alle de rækker, hvor værdien i første kolonne stemmer overens med en værdi der er tastet i Jobrotation.
Jeg har fundet ud af hvordan jeg henter data (se nedenstående), men da mængden af data er for stor og tidskrævende har jeg brug for kun at hente dem jeg skal bruge.
Pnumre må ikke åbnes, da vi grundet EDH (Elektronisk dokument håndtering) ikke kan lukke det igen uden at medarbejderen selv skal gøre noget.
Det ville også være fint hvis jeg blot kunne hente hele arket ind, men det virker umiddelbart ikke som om det er muligt efter mine søgninger på nettet.
Sub GetDataDemo()
Dim FilePath$, Row&, Column&, Address$
Dim Pnr As Long
'change constants & FilePath below to suit
'***************************************
Const FileName$ = "Pnumre.xlsx"
Const SheetName$ = "Data"
Const NumRows& = 20
Const NumColumns& = 10
FilePath = "P:\EXCEL programmer\YDS\Igang\"
Pnr = Sheets("Anmodning").Range("Pnr")
'***************************************
DoEvents
Application.ScreenUpdating = False
If Dir(FilePath & FileName) = Empty Then
MsgBox "The file " & FileName & " was not found", , "File Doesn't Exist"
Exit Sub
End If
For Row = 1 To NumRows
For Column = 1 To NumColumns
Address = Cells(Row, Column).Address
Cells(Row, Column) = GetData(FilePath, FileName, SheetName, Address)
Columns.AutoFit
Next Column
Next Row
ActiveWindow.DisplayZeros = False
End Sub
Private Function GetData(Path, File, Sheet, Address)
Dim Data$
Data = "'" & Path & "[" & File & "]" & Sheet & "'!" & _
Range(Address).Range("A1").Address(, , xlR1C1)
GetData = ExecuteExcel4Macro(Data)
End Function
Håber at der er en der kan hjælpe,
Mvh. Camilla