25. juli 2003 - 21:46Der er
7 kommentarer og 1 løsning
If file exist i excel
Hejsa
Er der nogen der kan hjælpe med denne problemstilling. Jeg ønsker, at oprette en formel, der udfører en kontrol af om et givent worksheet eksisterer og i givet fald, så returnerer værdien af en specifik celle fre dette worksheet.
Jeg havde forestillet mig noget i denne stil:
=HVIS(fileExist;[Uge01.xls]Ark1!$A$1;0)
hvor fileExist repræsenterer den kode, der skal kontrollere om der findes et worksheet.
Er dette muligt - også gerne på andre måder?
Kan man i øvrigt lave "Søg/erstat" på indholdet af en formel?
Denne formel undersøger om henvisning til celle A1 i den anden projektmappe, resulterer i en fejl. Sker dette udføres intet, resulterer det ikke i en fejl (altså eksisterer arket) returneres her indholdet af den pågældende A1-celle. Det kan du selvfølgelig skifte ud med noget andet.
men som jeg ser det, så gør den egentlig blot det som en almindelig sammenkædning ville gøre, hvilket betyder, at den afbryder formlen, hvis den pågældende fil ikke eksisterer. Dette ville jeg gerne undgå, således at Excel ikke selv "popper" op spørger efter placeringen.
Det er planen, at det regneark, hvor det skal bruges har 52 faneblade (én for hver uge) og der bliver så løbende oprettet filer med ugenavne, som disse faneblade skal refererer til. Derfor er formlen nødt til at indeholde referencer til filer, der endnu ikke eksisterer.
Den ændring du har foretaget får ingen virkning på formlens resultat. Du ændrer ER.FEJL() funktionen fra SAND til FALSK, og samtidig bytter du om på de 2 sidste parametre i HVIS()-funktionen.
Jeg foretog ændringen, fordi jeg fik en fejl, når jeg "copy/pastede" formlen. Nok bare mig, der er et fjog :o)
Men er det ikke korrekt, at hvis ikke projektmappen: "Uge01.xls" eksisterer, så vil formlen ikke blive udført, men derimod bede om en sti til denne projektmappe?
Jeg har skrevet en bruger defineret formel som kontrollerer om filen eksisterer. Formlen retunerer Boolean.
Public Function ErFil(ByVal sPlacering As String) As Boolean Dim fs As Object Set fs = CreateObject("Scripting.FileSystemObject") Application.Volatile ErFil = False ErFil = fs.fileexists(sPlacering) End Function
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.