15 February 2021

Cara Membuat Aplikasi Penjualan V.1 Berbasis Vba Excel Part 3

cara membuat aplikasi penjualan v.1 berbasis vba excel part 3

Assalamu’alaikum wr.wb

Cara Membuat Aplikasi Penjualan V.1 Berbasis Vba Excel Part 3 (Transaksi Pembelian dan Penjualan) - Kali ini saya akan melanjutkan tutorial tentang cara membuat aplikasi penjualan V.1. Sebelumnya saya sudah membagikan aplikasi penjualan part 1 dan part 2. Pada part 3 ini kita akan membuat coding transaksi pembelian dan transaksi penjualan dimana coding ini nantinya yang akan kita eksekusi pada Sheet Transaksi Pembelian dan Sheet Transaksi Penjualan. 

Fungsi Sheet Transaksi Pembelian dan Sheet Transaksi Penjualan

Fungsi sheet transaksi pembelian ini adalah sebagai faktur yang di buat oleh penjual untuk diberikan kepada supplier dan digunakan sebagai bukti bahwa konsumen tersebut telah melakukan transaksi pembelian kepada perusahaan (penjual) dan juga berfungsi untuk menyimpan data transaksi pembelian barang dari supplier (perusahaan) ke dalam database Sheet Barang Masuk.

Fungsi sheet transaksi penjualan adalah sebagai faktur yang di buat oleh penjual untuk di berikan kepada pelanggan yang digunakan untuk sebagai bukti transaksi dan juga berfungsi untuk menyimpan data transaksi penjualan barang ke dalam database Sheet Barang Keluar.

Kunjungi Juga: Cara Membuat Aplikasi Penjualan V.1 Berbasis Vba Excel Part 1

aplikasi penjualan v.1 berbasis vba excel
Faktur Transaksi Penjualan

Manfaat Faktur Pembelian dan Faktur Penjualan

Faktur pembelian dan penjualan memiliki banyak manfaat dan kegunaanya. Sebaiknya jangan anda buang dulu ya! Berikut manfaat dan kegunaan faktur pembelian:

  1. Faktur pembelian/penjualan ini merupakan bukti fisik bahwa barang atau jasa yang dibeli sesuai dengan keinginan pembeli. Didalamnya ada beberapa detail barang seperti nama perusahaan, alamat, tgl pembelian, no faktur, kode barang, nama barang dan harga.
  2. Sebagai bukti yang sah untuk melakukan klaim dari konsumen kepada penjual jika barang yang diberikan tidak sesuai dengan pesanan.
  3. Sebagai bukti informasi nilai tagihan pembayaran yang harus di lunasi oleh konsumen atau pembeli dan juga sebagai bukti saat penagihan.
  4. Bisa untuk mengetahui stock barang yang ada.
  5. Faktur pembelian dan penjualan termasuk salah satu dokumen penting di dalam perusahaan. 

Pada part 3 ini kita akan menambahkan sebuah modul dan di dalam modul tersebut terdapat sebuah perintah yang kita jalankan nantinya pada sheet transaksi pembelian dan sheet transaksi penjualan.

Baiklah langsung saja silahkan anda ikuti langkah-langkahnya di bawah ini

1.  Buka File Excel

Silahkan anda buka file aplikasi penjualan v.1 yang sudah anda dapatkan pada part 1 dan silahkan masuk ke jendela Visual Basic (Alt+F11).

2. Validasi Kode Barang Sheet  Pada Transaksi Pembelian

Untuk menampilkan kode barang pada Sheet Transaksi Pembelian kita harus validasi dulu silahkan drag dari kolom A8 sampai A20, selanjutnya klik Tab DataData ValidationSettings – Klik tanda panah di bawah Allow – Pilih List dan buatlah rumus berikut pada kolom Source.

=KODEBARANG

Rumus Pada Kolom Barang

=IFERROR(VLOOKUP(A8;TBLBARANG;2;FALSE);"")

Rumus Pada Kolom Sub Total

=IF(OR(D8="";E8="");"";D8*E8)

Setelah selesai membuat rumusnya silahkan drag ke bawah sampai kolom nomor 20.

Jangan lupa tambahkan Nama Range Kode supplier  beri nama KODESUPPLIER dan masukkan rumusnya seperti berikut:

=OFFSET(Supplier!$A$2;0;0;COUNTA(Supplier!$A$2:$A$5000);1)

3. Validasi Kode Barang Pada Sheet Transaksi Penjualan 

Untuk menampilkan kode barang pada Sheet Transaksi Penjualan sama dengan nomor 2.

Rumus Pada Kolom Barang

=IFERROR(VLOOKUP(A8;TBLBARANG;2;FALSE);"") 

Rumus Pada Kolom Harga

=IFERROR(VLOOKUP(A8;TBLBARANG;6;FALSE);"")

Rumus Pada Kolom Sub Total

=IF(OR(D8="";F8="");"";D8*F8)

4. Tambahkan 2 Buah Modul

Untuk menambahkan modul silahkan klik icon panah kecil di samping save kemudian klik Module maka modul akan tampil di folder Modules, rubahlah Namenya TRANSAKSIPEMBELIAN dan TRANSAKSIPENJUALAN

5. Input Coding Module Transaksi Pembelian

Silahkan double klik pada modul TRANSAKSIPEMBELIAN dan copas coding berikut.

Option Explicit

Sub NoTransPembelian()
Dim i, c As Long
Dim No As String

For i = 1 To 1048576
c = Sheet7.Range("A:A").Cells(i, 1)
If c = 0 Then
No = "PB/" & Day(Now) & Month(Now) & Year(Now) & i
Sheet5.Range("G4").Value = No
Sheet7.Range("A:A").Cells(i, 1) = i
Exit For
End If
Next i
End Sub

Sub SimpanPembelian()
Dim BB, Baris, Tampil As Object
Dim i, c As Long
Dim z, qty, stockawal As Integer
Dim X, Tgl, nofak, Kode, kodeproduk, pembeli, No, ket As String
Dim subtotal, Hasil As Currency

Tgl = Sheets("Transaksi Pembelian").Range("G3").Value
nofak = Sheets("Transaksi Pembelian").Range("G4").Value
pembeli = Sheets("Transaksi Pembelian").Range("C3").Value

For i = 1 To 1048576
X = Sheets("Barang Masuk").Range("A7:G1048576").Cells(i, 1)
No = Sheets("Barang Masuk").Range("A7:G1048576").Cells(i, 2)

If Trim(No) = Trim(nofak) Then
MsgBox "Transaksi ini Sudah Ada", vbInformation + vbOKOnly, "Silahkan Melakukan Transaksi Baru"
End
Exit For
End If

If Trim(X) = "" Then
Sheets("Barang Masuk").Range("A7:G1048576").Cells(i, 1).Value = Tgl
Sheets("Barang Masuk").Range("A7:G1048576").Cells(i, 2).Value = nofak
Sheets("Barang Masuk").Range("A7:G1048576").Cells(i, 3).Value = pembeli
Exit For
End If
Next i

For z = 1 To 19
Kode = Sheets("Transaksi Pembelian").Range("A8:G20").Cells(z, 1)
ket = Sheets("Transaksi Pembelian").Range("A8:G20").Cells(z, 3)
qty = Sheets("Transaksi Pembelian").Range("A8:G20").Cells(z, 5)
subtotal = Val(Sheets("Transaksi Pembelian").Range("A8:G20").Cells(z, 7))
If Kode <> "" Then
If z > 1 Then
i = i + 1
Sheets("Barang Masuk").Range("A7:G1048576").Cells(i, 1).Value = Tgl
Sheets("Barang Masuk").Range("A7:G1048576").Cells(i, 2).Value = nofak
Sheets("Barang Masuk").Range("A7:G1048576").Cells(i, 3).Value = pembeli
End If
Sheets("Barang Masuk").Range("A7:G1048576").Cells(i, 4).Value = Kode
Sheets("Barang Masuk").Range("A7:G1048576").Cells(i, 5).Value = ket
Sheets("Barang Masuk").Range("A7:G1048576").Cells(i, 6).Value = qty
Sheets("Barang Masuk").Range("A7:G1048576").Cells(i, 7).Value = subtotal
Else
Exit For
End If
'memasukkan kode barang
kodeproduk = Kode

'mencari stock awal produk yang dibeli
With Worksheets("Barang").Range("A2:F1048576")
Set BB = .Find(kodeproduk, LookIn:=xlValues)
If Not BB Is Nothing Then
Baris = BB.Row

'setelah ketemu memasukkan stock awal dikurangi dengan pembelian
stockawal = Worksheets("Barang").Cells(Baris, 4).Value
Hasil = stockawal + qty
Worksheets("Barang").Cells(Baris, 4).Value = Hasil

'hrgbeli = Worksheets("Transaksi Pembelian").Range("D8:D1048576")
'Tampil = hrgbeli
End If
End With
'Clear
Next z
Call MsgBox("Transaksi Berhasil", vbInformation, "Transaksi Pembelian")
'Clear
Sheet5.Range("A8:B20").Value = ""
Sheet5.Range("D8:D20").Value = ""
Sheet5.Range("E8:F20").Value = ""
End Sub

Keterangan: 

1. Perintah coding NoTransPembelian() yaitu untuk menampilkan nomor faktur atau nomor transaksi berdasarkan Tgl, Bulan, Tahun dan Nomor urut.

2. Perintah coding SimpanPembelian() yaitu untuk menyimpan hasil transaksi pembelian ke sheet Barang Masuk secara otomatis

6. Input Coding Module Transaksi Penjualan

Silahkan double klik modul TRANSAKSIPENJUALAN copas coding berikut.

Option Explicit

Sub NoTransPenjualan()
Dim i As Long
Dim c As Long
Dim No As String

For i = 1 To 1048576
c = Sheet7.Range("A:A").Cells(i, 1)
If c = 0 Then
No = "PJ/" & Day(Now) & Month(Now) & Year(Now) & i
Sheet9.Range("G5").Value = No
Sheet9.Range("G6").Value = No
Sheet7.Range("A:A").Cells(i, 1) = i
Exit For
End If
Next i
End Sub

Sub SimpanPenjualan()
Dim i, c As Long
Dim z, qty, stockawal, Hasil As Integer
Dim X, Tgl, nofak, Kode, kodeproduk, BB, Baris, customer, No, ket As String
Dim subtotal As Currency

Tgl = Sheets("Transaksi Penjualan").Range("G4").Value
nofak = Sheets("Transaksi Penjualan").Range("G5").Value
customer = Sheets("Transaksi Penjualan").Range("C4").Value

'Di Mulai dari Row Pertama s/d terakhir
For i = 1 To 1048576
X = Sheets("BarangKeluar").Range("A6:G1048576").Cells(i, 1)
No = Sheets("BarangKeluar").Range("A6:G1048576").Cells(i, 2)
If Trim(No) = Trim(nofak) Then
MsgBox "Silahkan Melakukan Transaksi Baru", vbInformation + vbOKOnly, " Kode Transaksi ini Sudah Ada"
End
Exit For
End If

If Trim(X) = "" Then
Sheets("BarangKeluar").Range("A6:G1048576").Cells(i, 1).Value = Tgl
Sheets("BarangKeluar").Range("A6:G1048576").Cells(i, 2).Value = nofak
Sheets("BarangKeluar").Range("A6:G1048576").Cells(i, 3).Value = customer
Exit For
End If
Next i

For z = 1 To 19
Kode = Sheets("Transaksi Penjualan").Range("A8:G12").Cells(z, 1)
ket = Sheets("Transaksi Penjualan").Range("A8:G12").Cells(z, 3)
qty = Sheets("Transaksi Penjualan").Range("A8:G12").Cells(z, 6)
subtotal = Val(Sheets("Transaksi Penjualan").Range("A8:G12").Cells(z, 7))
If Kode <> "" Then
If z > 1 Then
i = i + 1
Sheets("BarangKeluar").Range("A6:G1048576").Cells(i, 1).Value = Tgl
Sheets("BarangKeluar").Range("A6:G1048576").Cells(i, 2).Value = nofak
Sheets("BarangKeluar").Range("A6:G1048576").Cells(i, 3).Value = customer
End If
Sheets("BarangKeluar").Range("A6:G1048576").Cells(i, 4).Value = Kode
Sheets("BarangKeluar").Range("A6:G1048576").Cells(i, 5).Value = ket
Sheets("BarangKeluar").Range("A6:G1048576").Cells(i, 6).Value = qty
Sheets("BarangKeluar").Range("A6:G1048576").Cells(i, 7).Value = subtotal
Else
Exit For
End If

'memasukkan kode barang
kodeproduk = Kode

'mencari stock awal produk yang dibeli
With Worksheets("Barang").Range("A2:F1048576")
Set BB = .Find(kodeproduk, LookIn:=xlValues)
If Not BB Is Nothing Then
Baris = BB.Row

'setelah ketemu memasukkan stock awal dikurangi dengan pembelian
stockawal = Worksheets("Barang").Cells(Baris, 4).Value
Hasil = stockawal - qty
Worksheets("Barang").Cells(Baris, 4).Value = Hasil

End If
End With
'Clear

Next z
Call MsgBox("Transaksi Berhasil", vbInformation, "Transaksi Penjualan")
'Clear
Sheet9.Range("A8:B17").Value = ""
Sheet9.Range("F8:F17").Value = ""
Sheet9.Range("G21").Value = ""
End Sub

Keterangan: 

1. Perintah coding NoTransPenjualan() yaitu untuk menampilkan nomor transaksi berdasarkanTgl,Bulan, Tahun dan Nomor urut.

2. Perintah coding SimpanPenjualan() yaitu untuk menyimpan hasil transaksi penjualan secara otomatis ke sheet Barang Masuk

7. Eksekusi Coding Sheet Transaksi Pembelian

Supaya coding yang di input pada modul tadi bisa kita jalankan, silahkan buka sheet transaksi Pembelian disana anda akan melihat 2 buah tombol Button, Button Nota Baru dan Button Simpan

Fungsi Tombol Button Nota 

Berfungsi untuk menampilkan nomor faktur pada sheet transaksi pembelian berdasarkan Tgl, Bulan, Tahun dan Nomor urut.

Untuk menjalankan perintah menampilkan nomor faktur tersebut, caranya Klik kanan pada mouse – klik Assign Macro – Pilih NoTransPembelian.

8. Eksekusi Coding Sheet Transaksi Penjualan

Sama dengan sheet pembelian, perbedaanya pada sheet penjualan terdapat 3 tombol button New, Simpan dan Check Stock Barang.

Fungsi  Tombol Button New

Berfungsi untuk menampilkan nomor faktur pada sheet transaksi penjualan berdasarkan Tgl, Bulan, Tahun dan Nomor urut.

Untuk menampilkan nomor faktur pada sheet penjualan, caranya sama dengan diatas pada nomor 7.

9. Eksekusi/Jalankan

Terakhir silahkan anda coba lakukan transaksi baru. 

Kunjungi Juga: Cara Membuat Aplikasi Penjualan V.1 Berbasis Vba Excel Part 2

Cara Transaksi Pembelian: 

  1. Klik tombol Nota Baru
  2. Pilih kode supplier 
  3. Pilih Kode barang/Produk maka secara otomatis nama barang akan muncul
  4. Masukkan harga beli dan Qty maka secara otomatis harga subtotal akan muncul
  5. Silahkan Klik tombol simpan maka secara otomatis data transaksi pembelian akan muncul di database Sheet Barang Masuk 

Silahkan anda lakukan juga pada Sheet Transaksi Penjualan.

Sekian dulu cara membuat transaksi pembelian dan penjualan pada part 3 ini. Untuk part selanjutnya saya akan membagikan cara membuat laporan laba rugi pada aplikasi penjualan V.1 ini.

Mohon maaf kalau ada kesalahan pada penulisan coding, Jika ada pertanyaan silahkan tinggalkan komentarnya pada kolom yang sudah tersedia di bawah.

Berkomentarlah dengan sopan dan mari kita belajar bersama.

Terima kasih


Share This

SD IT Nurul Jannah, adalah sekolah dasar berbasis islam yang merangkum antara pendidikan formal atau umum dengan pendidikan agama secara menyeluruh, sehingga harapan kami nanti, mampu menciptakan generasi yang mandiri, cerdas, serta berahklakul karimah

0 Comments:

Berminat ingin menjadi penulis disini, silahkan kirimkan alamat email anda melalui halaman kontak kami.