Avatar billede oyejo Nybegynder
29. april 2005 - 15:38 Der er 2 kommentarer og
1 løsning

VBA FileSystemObject, Rename fil tillatelse til å overskrive

Etter mye feiling har jeg greid å gi alle filer med
csv-endelse txt-endelse.


Dim fso As FileSystemObject
Dim fsoFld As Folder
Dim fsoFil As File

Set fso = CreateObject("Scripting.FileSystemObject")
Set fsoFld = fso.GetFolder(sCsvFld)
For Each fsoFil In fsoFld.Files
    If UCase(Right(fsoFil.Name, 3)) = "CSV" Then
    fsoFil.Name = Left(fsoFil.Name, Len(fsoFil.Name) - 3) & "txt"
    End If
Next
Avatar billede oyejo Nybegynder
29. april 2005 - 15:41 #1
Men det er ett problem!
Noen få ganger er det alt en fil med det samme navnet i mappen.
Da får jeg feilmeldingen: File already exist.
Hvordan kan jeg skrive over den gamle filen?
Avatar billede oyejo Nybegynder
29. april 2005 - 15:43 #2
Ønsker dere god helg og at det ligger noen svar og venter på meg på Mandag :-)
Avatar billede oyejo Nybegynder
02. maj 2005 - 15:26 #3
Har funnet en løsning,
sjekker først om en fil med samme navn eksisterer.
Hvis det gjør, blir den slettet.
Så blir nanvet til den nye filen endret.

Dim sFilNavn As String

Set fso = CreateObject("Scripting.FileSystemObject")
Set fsoFld = fso.GetFolder(sCsvFld)

For Each fsoFil In fsoFld.Files
  If UCase(Right(fsoFil.Name, 3)) = "CSV" Then
    sFilNavn = sCsvFld & Left(fsoFil.Name, Len(fsoFil.Name) - 3) & "txt"
    If fso.FileExists(sFilNavn) Then
      fso.DeleteFile (sFilNavn)
    End If
    fsoFil.Name = Left(fsoFil.Name, Len(fsoFil.Name) - 3) & "txt"
  End If
Next
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
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

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