Microsoft Excel – Fájl módosítás megnyitás nélkül – VBA – Makró

Az alábbi kis kóddal képesek leszünk módosítani egy kézzel meg nem nyitott CSV fájlt.
(XLS, XLSX fájlokkal is működik)
Ebben a feladatban a konkrét feladat az volt, hogy a C oszlopban cseréljek le minden pontot vesszőre: . -> ,

Magyarázat:

MyPath – A fájl elérési útja
MyFile – A fájl neve és kiterjesztése
Wkb.Worksheets(“sheet_arlista_temp”).Select – Ide a munkafüzet nevét írd be!

Sub CSVFormaz()

    Dim MyPath          As String
    Dim MyFile          As String
    Dim Wkb             As Workbook
    Dim Cnt             As Long
    
    Application.ScreenUpdating = False
    
    MyPath = "C:\Users\Public\Documents\" 'change the path accordingly
    
    If Right(MyPath, 1) <> "\" Then MyPath = MyPath & "\"
    
    MyFile = Dir(MyPath & "arlista_temp.csv")
    
    Cnt = 0
    Do While Len(MyFile) > 0
        Cnt = Cnt + 1
        Set Wkb = Workbooks.Open(MyPath & MyFile)

        Wkb.Worksheets("sheet_arlista_temp").Select
        Columns("C:C").Select
        Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
        
        Wkb.Close savechanges:=True
        MyFile = Dir
    Loop
    
    If Cnt > 0 Then
        MsgBox "Completed...", vbExclamation
    Else
        MsgBox "No files were found!", vbExclamation
    End If
    
    Application.ScreenUpdating = True
    
End Sub

Hozzászólás