Jump to content

Byta filnamn snabbt och lätt?


Recommended Posts

Vilket operativsystem gäller det?

 

I Windows skulle jag säga DOS kommandon eller batch script typ "ren x:\*.xls *.xlxs" typ, du får kolla med några först innan du tar alla. Eller så kan man använda Windows PowerShell som är ett mer flexibelt sätt att göra saker i ett cmd fönster. Du måste känna till två av de viktigaste kommandon.. DIR och Rename-Item. Det bästa är att ha filerna i samma katalog så du inte byter namn på fel filer.. :)

 

Ett exempel:

 

Starta powershell.

Använd cd kommando för att komma till rätt katalog.

Dir söker igenom filerna och Rename-Item byter namn.. man kan använda "Pipe" för att skicka all sökdata till rename-Item.

Dir | Rename-Item –NewName { $_.name –replace “xls“,”xlsx” }

Det borde funka.. men testa först några..

 

Edit:

Lite info om PowerShell http://technet.microsoft.com/en-us/library/hh847837.aspx

Edited by Venoms
Link to comment
Share on other sites

Fast varför vill du byta namn på dem, alltså vad du ska göra om du ska göra det på riktigt är ju att öppna varje XLs och spara om den till XLSX eftersom filformaten är uppbyggda olika.

En XLs blir ju inte och får inte XLSX egenskaper bara för att du byter namn på dem.

XLS är baserat på BIFF där informationen sparas direkt binärt

medan XLSX är XML baserat där det egentligen är en textfil med informationen och sedan information om hur den hanteras, XLSX stödjer heller inte makron.

Link to comment
Share on other sites

Som du kanske märkt när du konverterat xls till xlsx så blir filen betydligt mindre. Detta ändras inte genom att bara byta namn på en fil.

 

Denna kod gör jobbet:

 

Excelfilerna skapas i samma mapp som de ligger (mappnamn där filerna måste ligga är c:\excel). Går att ändra enkelt till annan mapp om man önskar.

 

Obs! Har du macro i filerna så kommer filerna att konverteras men antagligen utan att macrona följer med.

 

xlstoxlsx.zip

Sub ConvertToXlsx()
    Dim strPath As String
    Dim strFile As String
    Dim wbk As Workbook
    ' Path must end in trailing backslash
    strPath = "C:\Excel\"
    strFile = Dir(strPath & "*.xls")
    Do While strFile <> ""
        If Right(strFile, 3) = "xls" Then
            Set wbk = Workbooks.Open(Filename:=strPath & strFile)
            wbk.SaveAs Filename:=strPath & strFile & "x", _
                FileFormat:=xlOpenXMLWorkbook
            wbk.Close SaveChanges:=False
        End If
        strFile = Dir
    Loop
End Sub

Här kommer samma som ovan fast för doc.

DocToDocx.zip

Sub ConvertToDocx()
    Dim strPath As String
    Dim strFile As String
    Dim wbk As Document
    ' Path must end in trailing backslash
    Msg = "Välj mapp för filerna som ska konverteras."
    strPath = "c:\excel\"
    strFile = Dir(strPath & "*.doc")
    Do While strFile <> ""
        If Right(strFile, 3) = "doc" Then
            Set wbk = Documents.Open(FileName:=strPath & strFile)
            wbk.SaveAs FileName:=strPath & strFile & "x", _
                FileFormat:=xlOpenXMLDocument
            wbk.Close SaveChanges:=False
        End If
        strFile = Dir
    Loop
End Sub
Edited by fredde
Link to comment
Share on other sites

Hejsan!

 

 

Jag har Windows 8 och Office 2013! Via "Utforskaren" kan jag inte öppna XLS / DOC-filer i resp. mjukvara utan dessa kan enbart öppnas via resp. mjukvara genom "Arkiv" -> "Öppna". Är fierna däremot i XLSX och DOCX-fomrat så går det utmrätk att öppna filerna direkt från utforskaren i resp. mjukvara! :).

 

"fredde":s tips verkar mycket bra tycker jag! :). Dock skulle en vägledning önskas om hur jag faktiskt omsätter tipset i praktiken då jag inte är så hemma på programmering och dyl. dessvärre!

 

 

Tack på förhand!
MVH at1981 !!

Link to comment
Share on other sites

En sak bara innan vi fortsätter..

Kan du kontrollera att om du i Excel klickar på Öppna -> Dator, I dialogrutan till höger visar "Alla Excel-filer..." och att .XLs finns med där. Om ett annat alternativ är valt, är det inte säkert att det går att öppna annat än xlsx som är standard..

Link to comment
Share on other sites

Den enkla vägen är att skapa och kopiera filer till mappen c:\excel , då är det bara att köra på med bifogade excelfiler. Du kan även behöva gör så att datorn kan köra macro/vba genom ändring i säkerhetsinställningarna.

 

I word eller excel går du till(du gör precis likadant på båda):

  1. Arkiv
  2. Alternativ
  3. Säkerhetscenter
  4. Klicka (Inställningar för säkerhetscenter) nere till höger
  5. Klicka i "Aktivera alla macron" och "Åtkomst till objektmodell för VBA är betrodd"

Ur säkerhetsskäl bör du återställa inställningarna om du inte har för avsikt att köra macro i framtiden.

 

Du når VBA editor med Alt/F11 tillfälligt eller så lägger du till i menylisten permanent genom Arkiv/Alternativ/Anpassa menyfliksområdet/

 

Om du ska ändra sökväg i koden så är det rad "strPath = "C:\Excel\"" som ska ändras till lämplig sökväg. Kolla bilderna nedan.

 

post-1361-0-12435600-1390149499_thumb.jp

 

post-1361-0-70846800-1390149516_thumb.jp

Edited by fredde
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...