PIndah Baris tidak Berurutan ketika input data

  1. 2 tahun lalu

    Salam para master semuanya, smog selalu sehat dan lancar rizqinya
    Mohon pencerahannya para master, mengatasi simpan data antar file loncat kebaris, gimana caranya supaya pindahnya kerbaris berikutnya urut tidak loncat.

  2. Caton

    12 Sep 2022 Terverifikasi Indonesia + 20.101 Poin

    @mumuskh ...

    Coba ubah baris berikut :

    Worksheets("Sheet1").Range("A2" & Baris).Value = a
    Worksheets("Sheet1").Range("B2" & Baris).Value = b
    Worksheets("Sheet1").Range("C2" & Baris).Value = c

    menjadi seperti berikut :

    Worksheets("Sheet1").Range("A" & Baris).Value = a
    Worksheets("Sheet1").Range("B" & Baris).Value = b
    Worksheets("Sheet1").Range("C" & Baris).Value = c

    Demikian.

  3. Alhamdulillah sukses, terima kasih banyak pencerahannya mas @Caton, smg kebaikannya dibalas berlipat ganda rizqi dan slalu sehat jasmani rohani , maaf ada 2 kendala yang sy kurang faham sdh sy coba otak atik tdk sukses. 1. Set wb = Workbooks.Open("D:\AUDIT\Data.xlsx") baris perintah ini klo tanpa menyebutkan direktorinya cukup dengan nama Data.xlsx yang penting satu folder gimana caranya? 2. setiap save file Data.xlsx pasti terbuka, apa ada cara lain tanpa terbuka bisa tersimpan...

  4. Caton

    12 Sep 2022 Terverifikasi Indonesia + 20.101 Poin
    Di sunting 2 tahun lalu oleh Caton

    @mumuskh ...

    ... baris perintah ini klo tanpa menyebutkan direktorinya cukup dengan nama Data.xlsx yang penting satu folder gimana caranya ...

    Contoh :

    Dim sFN As String
    
    sFN = ThisWorkbook.Path & "\DATA.XLSX"

    ... setiap save file Data.xlsx pasti terbuka, apa ada cara lain tanpa terbuka bisa tersimpan ...

    — Buat (Create) aplikasi Excel terpisah untuk membuka file datanya; Sembunyikan aplikasi ini.
    — Buka file data sebagai database Excel (ADODB).

    Contoh dengan cara pertama (file data dibuka terpisah). Salin script berikut ke Standard Module :

    Option Explicit
    
    Public mxlAP As Application
    Public mxlWB As Workbook
    Public mxlWS As Worksheet
    
    Public Sub SaveData()
        Dim sA As String, sB As String, sC As String
        Dim sFN As String
        Dim lRow As Long
        
        If mxlAP Is Nothing Then
            MsgBox "Tidak dapat menyimpan data! Database tidak ada!", vbCritical Or vbOKOnly
            Exit Sub
        End If
        
        If mxlWB Is Nothing Then
            sFN = ThisWorkbook.Path & "\DATA.XLSX"
            Set mxlWB = mxlAP.Workbooks.Open(FileName:=sFN, UpdateLinks:=False, Notify:=False)
            If mxlWB Is Nothing Then
                MsgBox "Gagal membuka berkas database!", vbCritical Or vbOKOnly
                Set mxlAP = Nothing
                Exit Sub
            End If
        End If
        
        If mxlWS Is Nothing Then
            Err.Clear: On Error Resume Next
            
            '+-- Set mxlWS ke sheet pertama.
            Set mxlWS = mxlWB.Worksheets(1)
            If Err Then
                Err.Clear: On Error GoTo 0
                MsgBox "Proses inisialisasi database gagal!", vbCritical Or vbOKOnly
                
                mxlWB.Close SaveChanges:=False
                Set mxlWB = Nothing
                Set mxlAP = Nothing
                Exit Sub
            End If
        End If
     
        With mxlWS
            lRow = .Cells(Rows.Count, "A").End(xlUp).Row + 1
            
            sA = Sheet1.Range("A2").Value
            sB = Sheet1.Range("A3").Value
            sC = Sheet1.Range("A4").Value
            
            If Len(sA) * Len(sB) * Len(sC) Then
                .Range("A" & lRow).Value = sA
                .Range("B" & lRow).Value = sB
                .Range("C" & lRow).Value = sC
                
                mxlWB.Save
                MsgBox "Data tersimpan!", vbInformation Or vbOKOnly
            Else
                MsgBox "Mohon isi dulu datanya!", vbExclamation Or vbOKOnly
            End If
        End With
        
    errHandler:
        If Err Then
            Err.Clear: On Error GoTo 0
        End If
    End Sub
    
    Public Sub Auto_Open()
        If mxlAP Is Nothing Then
            Set mxlAP = New Application
            If Not mxlAP Is Nothing Then
                mxlAP.Visible = False
            Else
                MsgBox "Proses inisialisasi aplikasi Excel gagal!", vbCritical Or vbOKOnly
                Exit Sub
            End If
        End If
    End Sub
    
    Public Sub Auto_Close()
        If Not mxlWB Is Nothing Then
            mxlWB.Close SaveChanges:=False
            Set mxlWB = Nothing
        End If
        
        mxlAP.Quit
        Set mxlAP = Nothing
    End Sub

    Demikian.

  5. Terima kasih banyak ilmunya mas @Caton , smg sehat selalu dan rizqi melimpah, sy pelajari dlu, sangat membuka wawasan sy dalam ilmu excell

  6. Caton

    12 Sep 2022 Terverifikasi Indonesia + 20.101 Poin

    @mumuskh ...

    Sama-sama mas. Revisi sedikit, untuk baris berikut :

    Public mxlAP As Application
    Public mxlWB As Workbook
    Public mxlWS As Worksheet

    baiknya diubah menjadi :

    Private mxlAP As Application
    Private mxlWB As Workbook
    Private mxlWS As Worksheet

    karena variabel-variable tersebut tidak digunakan lintas modul.

    Demikian.

  7. Baik, terima kasih banyak mas @Caton, smg sekeluarga selalu sehat

  8. setalah sy coba sukses semua, dan sy coba pelajari ada banyak tambahan ilmu, terima kasih banyak ilmunya, klo boleh mau tanya lagi menambah edit dan hapus data diatas tidak sukses coba otak atik juga mentok

 

atau Mendaftar untuk ikut berdiskusi!