Avatar billede floffi_d Nybegynder
17. december 2008 - 12:33 Der er 5 kommentarer og
1 løsning

Hente celle data fra andre projekt mapper

Jeg har en mappe med mange excel filer, jeg skal bruge en liste i et andet ark, hvor der står filnavn plus den data der står i en bestemt celle F.eks B4
Der er mange så du ville være rart med en macro.

Der er faktist filer i flere mapper så hvis man kan lave så den skriver "mappe navn"  i A1 "Filnavn" i A2 og "Data fra Celle B4" i A3

Håber der en nogen der kan hjælpe mig
Avatar billede coolkey Nybegynder
18. december 2008 - 14:03 #1
Er er et lille eks. hvor der i:
celle A1 står fulde stinavn (f.eks P:\TEST\)
celle B1 står regnearknavn (f.eks TEST.XLS)
celle C1 står arknavn (f.eks Ark1)
celle D1 står cellenavn (f.eks F99)

Eks. åbner det angivet regneark, kopiere fra et bestem ark, fra en bestem celle og ligger det i samme celle i modtager arket. (Kopi af celle F99 fra TEST.XLS ender i celle F99 i modtager arket). Dette er ændres ved, at også have en modtager celle.

Sub Find()
    Dim strStinavn As String
    Dim strFilnavn As String
    Dim strFeltnavn As String
    Dim strArknavn As String
   
    strStinavn = Range("A1")
    strFilnavn = Range("B1")
    strArknavn = Range("C1")
    strFeltnavn = Range("D1")
   
    Workbooks.Open Filename:=strStinavn + strFilnavn
    Sheets(strArknavn).Select
    Range(strFeltnavn).Select
    Selection.Copy
    Windows("mappe1").Activate
    Range(strFeltnavn).Select
    ActiveSheet.Paste
    Windows(strFilnavn).Activate
    ActiveWorkbook.Close savechanges:=False
   
End Sub
Avatar billede oleelo Nybegynder
04. januar 2009 - 16:00 #2
Hej
Denne mackro henter data fra celle B1 i alle faner fra alle regneark i udvalgt katalger.
Du skal copiere denne mackro over i et nye regneark, som dog ikke må gemmes i kataloget med dine "data".
PÅ Ark2 i Celle A1 skriver du dit katalog ( eks c:\test1\ ), i celle A2 det næste katalog  osv.
Dine data indlæses ind på Ark1


Sub HentData()
Dim Linje As Integer, Katalog As Integer, ArkNo As Integer
Dim NyPath As String, myName As String
Linje = 1
Katalog = 1

On Error GoTo Fejl
Application.ScreenUpdating = False

'NyPath = "c:\"
Do While ThisWorkbook.Sheets("Ark2").Cells(Katalog, 1).Value <> ""  '
NyPath = ThisWorkbook.Sheets("Ark2").Cells(Katalog, 1).Value

myName = Dir(NyPath & "*.xls")

Do While myName <> ""
    If myName <> "." And myName <> ".." Then
    Workbooks.Open Filename:=NyPath & myName, ReadOnly:=True
   
    For ArkNo = 1 To ActiveWorkbook.Sheets.Count
    ThisWorkbook.Sheets("Ark1").Cells(Linje, 1).Value = myName
    ThisWorkbook.Sheets("Ark1").Cells(Linje, 2).Value = ActiveWorkbook.Sheets(ArkNo).Name
    ThisWorkbook.Sheets("Ark1").Cells(Linje, 3).Value = ActiveWorkbook.Sheets(ArkNo).Range("B1")
    Linje = Linje + 1
    Next ArkNo
   
    Workbooks(myName).Close
   
      End If
    myName = Dir    ' Get next file
 
Loop
Katalog = Katalog + 1
Loop

    Application.ScreenUpdating = True
    Exit Sub
   
Fejl:
Application.ScreenUpdating = False

End Sub
Avatar billede floffi_d Nybegynder
06. januar 2009 - 08:22 #3
Tak for svaret oleelo.

Jeg kan bare ikke få den til at køre jeg har rettet celle navn til. men hvad er der ellers jeg skal rette til. Hva med (NyPath="c:\") hvad hen viser den til?
Avatar billede floffi_d Nybegynder
06. januar 2009 - 09:18 #4
Nu virker det mange tak.  det eneste kan man måske på den til at adskille listen på ark 1 med en linie med navn på mappen?
Avatar billede floffi_d Nybegynder
06. januar 2009 - 09:29 #5
og måsks kun hente fra ark 1?
Avatar billede oleelo Nybegynder
06. januar 2009 - 17:12 #6
Hej
'NyPath="c:\" er noget kode er ikke bruge , bemærk ' (flugeben ) først i linjen hvilket betyder at det ikke er kode.

Hvis du vilhave en tom linjen sætter du : Linje = Linje + 1 til :Linje = Linje + 2

Hvis du kun vil have ark1 Ændre du : For ArkNo = 1 To ActiveWorkbook.Sheets.Count  til : ArkNo = 1    og sletter : Next ArkNo

ArkNo er index nr for arket , Sheets(ArkNo) kan også rettes til eks Sheets("Ark1") . Navnene retter du til så det passer med hvad du har

mvh oleelo
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester