Dengan cara satu kali klik kita bisa menampilkan data dari sumber data mulai dari memilih data yang diperlukan saja kemudian menyisipkan judul dan melakukan pemormatan tampilan, serta layout atau pagesetup dari lembar kerja itu.
Artikel ini untuk menjelaskan artikel sebelumnya Membuat aplikasi keuangan upk berbasis excel
Untuk menampilkan data bank pada bulan pelaporan kita akan mengcopynya dari data input kas yang dimasukan pada bulan tersebut ke sheet temporary area namun sebelum mengcopynya kita akan menyeting dahulu lembaran sheet temporary area.
perintah untuk mengaktifkan sheet temporary area
Sheet14.Activate
perintah untuk menghapus data sebelumnya
Sheet14.Cells.Clear
Perintah untuk mengeset isi dari sheet temporaryarea
Range("A1").Value = "UNIT PENGELOLA KEGIATAN"
Range("A2").Value = "BUKU BANK OPERASIONAL"
Range("A3").FormulaR1C1 = "=""PERIODE SD ""&TEXT(DATAPOKOK!R1C9,""DD MMMM YYYY"")"
Range("A4").Value = "Kecamatan"
Range("a5").Value = "Kabupaten"
Range("A6").Value = "Propinsi"
Range("A8").Value = "No"
Range("b8").Value = "Tanggal"
Range("c8").Value = "Uraian"
Range("d8").Value = "No Bukti"
Range("e8").Value = "PEMASUKAN"
Range("e9").Value = "Setor ke rek"
Range("f9").Value = "Bunga Bank"
Range("g8").Value = "PENGELUARAN"
Range("g9").Value = "Tarik dari rek"
Range("h9").Value = "Pajak Bank"
Range("i9").Value = "Adm Bank"
Range("j8").Value = "Saldo"
Perintah untuk menyalin data transaksi pada bulan ini dari sheet bank operasional
Sheet7.Activate
Range("a1").CurrentRegion.Select
ActiveSheet.Range("$A$1:$f$8").AutoFilter FIELD:=2, Criteria1:= _
Sheet13.Range("j2"), Operator:=xlAnd, Criteria2:=Sheet13.Range("k2")
Sheet7.Range("A1").CurrentRegion.Select
Selection.SpecialCells(xlCellTypeVisible).Copy
Perintah untuk paste pada sheet temporaryarea
Sheet14.Activate
Cells(11, 22).PasteSpecial Paste:=xlPasteValues
Perintah untuk menghitung banyaknya data dari transaksi pada bulan ini
Dim isi As Long
isi = WorksheetFunction.CountA(Range("V:V")) + 10
Perintah untuk menyisipkan rumus untuk menyebar angka sesuai dengan posnya masing-masing
Range(Cells(12, 5), Cells(isi, 10)).FormulaR1C1 = "=if(r9c=rc26,rc27,0)"
Perintah untuk menyaling NO, Tanggal, dan uraian transaksi
Range(Cells(12, 22), Cells(isi, 24)).Copy
Range("a12").PasteSpecial Paste:=xlPasteAll
Perintah untuk mengatur penomoran transaksi agar berurutan dimulai dengan 1 (satu)
Range(Cells(12, 1), Cells(isi, 1)).Resize(, 1).Formula = "=row(1:1)"
Perintah untuk menyisipkan uraian tambahan
Range("c10").Value = "Total Transaksi sd Tahun Lalu"
Range("c11").Value = "Total Transaksi sd Bulan Lalu"
Cells(isi + 1, 1).Value = "Total Transaksi Bulan Ini"
Cells(isi + 2, 1).Value = "Total Transaksi Tahun Ini"
Cells(isi + 3, 1).Value = "Total Transaksi Komulatif sd Bulan ini"
Perintah untuk menyisipkan rumus total transaksi bulan ini, total transaksi tahun ini, dan total transaksi komulatif
Range(Cells(isi + 1, 5), Cells(isi + 1, 10)).FormulaR1C1 = "=sum(r12c:r[-1]c)"
Range(Cells(isi + 2, 5), Cells(isi + 2, 10)).FormulaR1C1 = "=r11c+r[-1]c"
Range(Cells(isi + 3, 5), Cells(isi + 3, 10)).FormulaR1C1 = "=r10c+r[-1]c"
Perintah untuk memasang rumus total transaksi tahun lalu dan bulan lalu
Range("e10:i10").FormulaR1C1 = "=sumifs(bankOP!c6:c6,bankOP!c2:c2,datapokok!r4c9,bankOP!c5:c5,r[-1]c)"
Range("e11:i11").FormulaR1C1 = "=sumifs(bankOP!c6:c6,bankOP!c2:c2,datapokok!r2c10,bankOP!c2:c2,datapokok!r2c11,bankOP!c5:c5,r[-2]c)"
Perintah untuk pemormatan
Range("a8:a9").Merge
Range("b8:b9").Merge
Range("c8:c9").Merge
Range("d8:d9").Merge
Range("e8:f8").Merge
Range("g8:i8").Merge
Range("j8:j9").Merge
Range("a8:j9").HorizontalAlignment = xlCenter
Range("a8:j9").VerticalAlignment = xlCenter
Range("a8:j9").Font.Bold = True
Range("a8:j9").WrapText = True
Range("a1:j1").Merge
Range("a2:j2").Merge
Range("a3:j3").Merge
Range("a1:j3").HorizontalAlignment = xlCenter
Range("a1:j3").Font.Bold = True
Perintah untuk menyisipkan rumus pada colom saldo
Range("j10").FormulaR1C1 = "=sum(rc[-5]:rc[-4])-sum(rc[-3]:rc[-1])"
Range(Cells(11, 10), Cells(isi, 10)).FormulaR1C1 = "=r[-1]c+sum(rc[-5]:rc[-4])-sum(rc[-3]:rc[-1])"
Range(Cells(isi + 1, 10), Cells(isi + 3, 10)).FormulaR1C1 = "=sum(rc[-5]:rc[-4])-sum(rc[-3]:rc[-1])"
nah itu inti dari perintah untuk menampilkan kas operasional upk
selanjutnya untuk perintah macro yang lengkapnya adalah sebagai berikut
Sub bankop()
Sheet14.Activate
Sheet14.Cells.Clear
Range("A1").Value = "UNIT PENGELOLA KEGIATAN"
Range("A2").Value = "BUKU BANK OPERASIONAL"
Range("A3").FormulaR1C1 = "=""PERIODE SD ""&TEXT(DATAPOKOK!R1C9,""DD MMMM YYYY"")"
Range("A4").Value = "Kecamatan"
Range("a5").Value = "Kabupaten"
Range("A6").Value = "Propinsi"
Range("A8").Value = "No"
Range("b8").Value = "Tanggal"
Range("c8").Value = "Uraian"
Range("d8").Value = "No Bukti"
Range("e8").Value = "PEMASUKAN"
Range("e9").Value = "Setor ke rek"
Range("f9").Value = "Bunga Bank"
Range("g8").Value = "PENGELUARAN"
Range("g9").Value = "Tarik dari rek"
Range("h9").Value = "Pajak Bank"
Range("i9").Value = "Adm Bank"
Range("j8").Value = "Saldo"
Sheet7.Activate
Range("a1").CurrentRegion.Select
ActiveSheet.Range("$A$1:$f$8").AutoFilter FIELD:=2, Criteria1:= _
Sheet13.Range("j2"), Operator:=xlAnd, Criteria2:=Sheet13.Range("k2")
Sheet7.Range("A1").CurrentRegion.Select
Selection.SpecialCells(xlCellTypeVisible).Copy
Sheet14.Activate
Cells(11, 22).PasteSpecial Paste:=xlPasteValues
Dim isi As Long
isi = WorksheetFunction.CountA(Range("V:V")) + 10
Range(Cells(12, 5), Cells(isi, 10)).FormulaR1C1 = "=if(r9c=rc26,rc27,0)"
Range(Cells(12, 22), Cells(isi, 24)).Copy
Range("a12").PasteSpecial Paste:=xlPasteAll
Range(Cells(12, 1), Cells(isi, 1)).Resize(, 1).Formula = "=row(1:1)"
Range("c10").Value = "Total Transaksi sd Tahun Lalu"
Range("c11").Value = "Total Transaksi sd Bulan Lalu"
Cells(isi + 1, 1).Value = "Total Transaksi Bulan Ini"
Cells(isi + 2, 1).Value = "Total Transaksi Tahun Ini"
Cells(isi + 3, 1).Value = "Total Transaksi Komulatif sd Bulan ini"
Range(Cells(isi + 1, 5), Cells(isi + 1, 10)).FormulaR1C1 = "=sum(r12c:r[-1]c)"
Range(Cells(isi + 2, 5), Cells(isi + 2, 10)).FormulaR1C1 = "=r11c+r[-1]c"
Range(Cells(isi + 3, 5), Cells(isi + 3, 10)).FormulaR1C1 = "=r10c+r[-1]c"
Range("e10:i10").FormulaR1C1 = "=sumifs(bankOP!c6:c6,bankOP!c2:c2,datapokok!r4c9,bankOP!c5:c5,r[-1]c)"
Range("e11:i11").FormulaR1C1 = "=sumifs(bankOP!c6:c6,bankOP!c2:c2,datapokok!r2c10,bankOP!c2:c2,datapokok!r2c11,bankOP!c5:c5,r[-2]c)"
Range("a8:a9").Merge
Range("b8:b9").Merge
Range("c8:c9").Merge
Range("d8:d9").Merge
Range("e8:f8").Merge
Range("g8:i8").Merge
Range("j8:j9").Merge
Range("a8:j9").HorizontalAlignment = xlCenter
Range("a8:j9").VerticalAlignment = xlCenter
Range("a8:j9").Font.Bold = True
Range("a8:j9").WrapText = True
Range("a1:j1").Merge
Range("a2:j2").Merge
Range("a3:j3").Merge
Range("a1:j3").HorizontalAlignment = xlCenter
Range("a1:j3").Font.Bold = True
Range("j10").FormulaR1C1 = "=sum(rc[-5]:rc[-4])-sum(rc[-3]:rc[-1])"
Range(Cells(11, 10), Cells(isi, 10)).FormulaR1C1 = "=r[-1]c+sum(rc[-5]:rc[-4])-sum(rc[-3]:rc[-1])"
Range(Cells(isi + 1, 10), Cells(isi + 3, 10)).FormulaR1C1 = "=sum(rc[-5]:rc[-4])-sum(rc[-3]:rc[-1])"
Range(Cells(8, 1), Cells(isi + 3, 10)).Borders.LineStyle = xlContinuous
Range(Cells(isi + 1, 5), Cells(isi + 1, 10)).Interior.Color = vbGreen
Range("e11:j11").Interior.Color = vbGreen
Range("e10:j10").Interior.Color = vbRed
Range(Cells(isi + 3, 5), Cells(isi + 3, 10)).Interior.Color = vbYellow
Range(Cells(12, 2), Cells(isi, 2)).NumberFormat = "dd/mm/yyyy"
Range(Cells(10, 5), Cells(isi + 3, 10)).NumberFormat = "#,##0"
Range("a12").ColumnWidth = 4
Range("b12").ColumnWidth = 10
Range("c12").ColumnWidth = 30
Range("d12").ColumnWidth = 6
Range("e12:j12").ColumnWidth = 13
Range(Cells(1, 1), Cells(isi + 10, 10)).Name = "daerah"
Range(Cells(10, 5), Cells(isi + 3, 10)).ShrinkToFit = True
With ActiveSheet.PageSetup
.PrintArea = ""
.Zoom = 90
.PrintArea = "daerah"
End With
End Sub
Itulah macro untuk menampilkan data bank op untuk sheet dapat disesuaikan dengan data yang ada.
1 Comments
izin copy gan
ReplyDeletePost a Comment