Selasa, 24 Juni 2025

Cara cepat mengubah rumus/formula menjadi nilai/value di Excel menggunakan Macro

 Kode Macro :

Sub ConvertFormulasToValuesAndSaveToNewFolder()
    Dim sourceFolder As String, targetFolder As String
    Dim fileName As String
    Dim wb As Workbook
    Dim ws As Worksheet
    Dim fDialog As FileDialog

    ' Pilih folder sumber
    Set fDialog = Application.FileDialog(msoFileDialogFolderPicker)
    MsgBox "Pilih folder SUMBER (berisi file Excel yang akan dikonversi)."
    If fDialog.Show <> -1 Then Exit Sub
    sourceFolder = fDialog.SelectedItems(1) & "\"

    ' Pilih folder tujuan
    MsgBox "Pilih folder TUJUAN (untuk menyimpan hasil konversi)."
    If fDialog.Show <> -1 Then Exit Sub
    targetFolder = fDialog.SelectedItems(1) & "\"

    ' Nonaktifkan notifikasi
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False

    ' Proses semua file Excel
    fileName = Dir(sourceFolder & "*.xls*")
    Do While fileName <> ""
        Set wb = Workbooks.Open(sourceFolder & fileName)

        ' Ubah semua worksheet jadi value-only
        For Each ws In wb.Worksheets
            With ws.UsedRange
                .Value = .Value
            End With
        Next ws

        ' Simpan dengan nama yang sama ke folder tujuan
        wb.SaveAs Filename:=targetFolder & fileName, FileFormat:=xlOpenXMLWorkbook
        wb.Close SaveChanges:=False
        fileName = Dir
    Loop

    Application.ScreenUpdating = True
    Application.DisplayAlerts = True

    MsgBox "Selesai! Semua file disimpan sebagai nilai saja ke folder tujuan.", vbInformation
End Sub


Cara pakai :

  1. Tekan Alt + F11 → buka Visual Basic Editor
  2. Pilih InsertModulepaste kode di atas
  3. Jalankan makro: ConvertFormulasToValuesAndSaveToNewFolder
  4. Pilih folder sumber (file Excel dengan formula)
  5. Pilih folder tujuan (untuk menyimpan hasil)
  6. File akan dikonversi ke nilai-only dan disimpan ke folder tujuan dengan nama yang sama

Tidak ada komentar:

Posting Komentar