
{"id":286,"date":"2021-02-26T03:18:07","date_gmt":"2021-02-25T19:18:07","guid":{"rendered":"https:\/\/indonesiangems.com\/blog\/?p=286"},"modified":"2021-03-19T06:24:30","modified_gmt":"2021-03-18T22:24:30","slug":"macro-untuk-form-input-di-excel","status":"publish","type":"post","link":"https:\/\/indonesiangems.com\/blog\/macro-untuk-form-input-di-excel\/","title":{"rendered":"Macro untuk form input di Excel (transaksi jual beli)"},"content":{"rendered":"<p class=\"last-updated\">Last updated on March 19th, 2021 at 06:24 am<\/p>\n<!--more-->\n\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button is-style-outline is-style-outline--1\"><a class=\"wp-block-button__link\" href=\"https:\/\/indonesiangems.com\/blog\/excel-macro-purchase-sales-form-data-entry\/\">ganti ke bahasa inggris<\/a><\/div>\n<\/div>\n\n\n\n<p>Disini pak Adi akan membuat <a href=\"https:\/\/docs.microsoft.com\/en-us\/office\/vba\/library-reference\/concepts\/getting-started-with-vba-in-office\" target=\"_blank\" rel=\"noreferrer noopener\">kode macro<\/a> untuk form input jual beli di Excel yang telah dia buat sebelumnya di topik &#8220;<a href=\"https:\/\/indonesiangems.com\/blog\/membuat-form-input-jual-beli-di-excel\/\" target=\"_blank\" rel=\"noreferrer noopener\">Membuat form input jual beli di Excel<\/a>&#8220;.<\/p>\n\n\n\n<p>Apabila pembaca ingin langsung loncat ke tahap test-run kode macro nya, silahkan langsung <a href=\"https:\/\/indonesiangems.com\/blog\/macro-untuk-form-input-di-excel\/2\/\" target=\"_blank\" rel=\"noreferrer noopener\">ke halaman-2<\/a> topik ini. Disitu bisa di download terlebih dahulu sample file-nya, jadi bisa di praktekan langsung di file sambil mengikuti contoh kasus-nya di halaman-2 topik ini.<\/p>\n\n\n\n<h5 class=\"wp-block-heading\"><em>Membuat kode Macro untuk User Form<\/em>.<\/h5>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><a href=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-01_excel-visal-basic-editor-menu.png\"><img loading=\"lazy\" decoding=\"async\" width=\"674\" height=\"184\" src=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-01_excel-visal-basic-editor-menu.png\" alt=\"\" class=\"wp-image-1301\"\/><\/a><\/figure><\/div>\n\n\n\n<p>Masih di halaman &#8220;JualBeli&#8221; dan masih di tab <span style=\"background-color: LightGrey\">Developer<\/span>, apabila tombol <span style=\"background-color: LightGrey\">Design Mode<\/span> masih nyala (berwarna oranye seperti pada gambar diatas), klik tombol tsb agar tidak menyala lagi. Lalu klik tombol <span style=\"background-color: LightGrey\">Visual Editor<\/span> (terlihat letaknya di paling kiri pada aplikasi Excel saya).<\/p>\n\n\n\n<p>Akan terbuka window baru (VBA Editor) untuk membuat kode kode. Ada dua buah window kecil didalamnya, yakni window <span style=\"background-color: LightGrey\">Project &#8211; VBAProject<\/span> dan window <span style=\"background-color: LightGrey\">Properties &#8211; Sheet5<\/span><\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><a href=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-02_macro-untuk-setting-activex-control.png\"><img decoding=\"async\" src=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-02_macro-untuk-setting-activex-control.png\" alt=\"\" class=\"wp-image-938\"\/><\/a><\/figure><\/div>\n\n\n\n<p>Pada <span style=\"background-color: LightGrey\">Project &#8211; VBAProject<\/span> window, double klik <span style=\"background-color: LightGrey\">Sheet5 (JualBeli)<\/span> agar disebelah kanannya terbuka halaman kosong untuk di isi kode kode macro.<\/p>\n\n\n\n<p>Selanjutnya copy kode macro dibawah ini, lalu paste di halaman kosong tsb, sehingga hasilnya seperti pada gambar diatas.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Dim rngItem         As Range\nDim cnt             As Integer\n\nSub SetActiveXControls()\n    Set patok = Range(\"zz1\")\n    With PD\n        .Height = patok.Height * 2 - 5\n        .Width = patok.Width\n        .Top = Range(\"h2\").Top - 3\n        .Left = Range(\"h2\").Left\n    End With\n    With HD\n        .Height = patok.Height * 2 - 5\n        .Width = patok.Width\n        .Top = Range(\"i2\").Top - 3\n        .Left = Range(\"i2\").Left\n    End With\n    With Item\n        .Height = patok.Height * 2 - 5\n        .Width = patok.Width\n        .Top = Range(\"j2\").Top - 3\n        .Left = Range(\"j2\").Left\n    End With\n    With Kas_Bon\n        .Height = patok.Height * 2 - 5\n        .Width = patok.Width * 3\n        .Top = Range(\"h4\").Top - 5\n        .Left = Range(\"h4\").Left\n    End With\n    With CARI\n        .Height = patok.Height + 3\n        .Width = patok.Width * 2\n        .Top = Range(\"i6\").Top - 3\n        .Left = Range(\"i6\").Left\n    End With\n    With ListNama\n        .Height = patok.Height * 6 - 2\n        .Width = patok.Width * 3\n        .Top = Range(\"h7\").Top\n        .Left = Range(\"h7\").Left\n    End With\n    With BARU\n        .Height = patok.Height * 2 - 4\n        .Width = patok.Width * 3\n        .Top = Range(\"h13\").Top\n        .Left = Range(\"h13\").Left\n    End With\n    With InputKeData\n        .Height = patok.Height * 2 + 5\n        .Width = patok.Width * 3\n        .Top = Range(\"h16\").Top\n        .Left = Range(\"h16\").Left\n    End With\nEnd SubDim rngItem         As Range\nDim cnt             As Integer\n\nSub SetActiveXControls()\n    Set patok = Range(\"zz1\")\n    With PD\n        .Height = patok.Height * 2 - 5\n        .Width = patok.Width\n        .Top = Range(\"h2\").Top - 3\n        .Left = Range(\"h2\").Left\n    End With\n    With HD\n        .Height = patok.Height * 2 - 5\n        .Width = patok.Width\n        .Top = Range(\"i2\").Top - 3\n        .Left = Range(\"i2\").Left\n    End With\n    With Item\n        .Height = patok.Height * 2 - 5\n        .Width = patok.Width\n        .Top = Range(\"j2\").Top - 3\n        .Left = Range(\"j2\").Left\n    End With\n    With Kas_Bon\n        .Height = patok.Height * 2 - 5\n        .Width = patok.Width * 3\n        .Top = Range(\"h4\").Top - 8\n        .Left = Range(\"h4\").Left\n    End With\n    With CARI\n        .Height = patok.Height + 5\n        .Width = patok.Width * 2\n        .Top = Range(\"i6\").Top - 4\n        .Left = Range(\"i6\").Left\n    End With\n    With ListNama\n        .Height = patok.Height * 6 - 2\n        .Width = patok.Width * 3\n        .Top = Range(\"h7\").Top\n        .Left = Range(\"h7\").Left\n    End With\n    With BARU\n        .Height = patok.Height * 2 - 4\n        .Width = patok.Width * 3\n        .Top = Range(\"h13\").Top\n        .Left = Range(\"h13\").Left\n    End With\n    With InputKeData\n        .Height = patok.Height * 2 + 5\n        .Width = patok.Width * 3\n        .Top = Range(\"h16\").Top\n        .Left = Range(\"h16\").Left\n    End With\nEnd SubDim rngItem         As Range\nDim cnt             As Integer\n\nSub SetActiveXControls()\n    Set patok = Range(\"zz1\")\n    With PD\n        .Height = patok.Height * 2 - 5\n        .Width = patok.Width\n        .Top = Range(\"h2\").Top - 3\n        .Left = Range(\"h2\").Left\n    End With\n    With HD\n        .Height = patok.Height * 2 - 5\n        .Width = patok.Width\n        .Top = Range(\"i2\").Top - 3\n        .Left = Range(\"i2\").Left\n    End With\n    With Item\n        .Height = patok.Height * 2 - 5\n        .Width = patok.Width\n        .Top = Range(\"j2\").Top - 3\n        .Left = Range(\"j2\").Left\n    End With\n    With Kas_Bon\n        .Height = patok.Height * 2 - 5\n        .Width = patok.Width * 3\n        .Top = Range(\"h4\").Top - 5\n        .Left = Range(\"h4\").Left\n    End With\n    With CARI\n        .Height = patok.Height + 3\n        .Width = patok.Width * 2\n        .Top = Range(\"i6\").Top - 3\n        .Left = Range(\"i6\").Left\n    End With\n    With ListNama\n        .Height = patok.Height * 6 - 2\n        .Width = patok.Width * 3\n        .Top = Range(\"h7\").Top\n        .Left = Range(\"h7\").Left\n    End With\n    With BARU\n        .Height = patok.Height * 2 - 4\n        .Width = patok.Width * 3\n        .Top = Range(\"h13\").Top\n        .Left = Range(\"h13\").Left\n    End With\n    With InputKeData\n        .Height = patok.Height * 2 + 5\n        .Width = patok.Width * 3\n        .Top = Range(\"h16\").Top\n        .Left = Range(\"h16\").Left\n    End With\nEnd Sub<\/code><\/pre>\n\n\n\n<p>Setelah di paste, letakkan kursor dibawah text <span style=\"background-color: Bisque\">Sub SetActiveXControls<\/span>, lalu klik tombol segitiga berwarna hijau (semacam tombol play) yang terdapat di menu VBA Editor (tanda panah pada gambar diatas). Jadi disini artinya kita meng-execute (nge-run) macro &#8220;SetActiveXControls&#8221;.<\/p>\n\n\n\n<p>Kecilkan (minimize) VBA Editor window untuk melihat hasil run macro-nya di halaman &#8220;JualBeli&#8221;. <\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><a href=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-03_worksheet-form-input.png\"><img loading=\"lazy\" decoding=\"async\" width=\"693\" height=\"436\" src=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-03_worksheet-form-input.png\" alt=\"\" class=\"wp-image-1302\"\/><\/a><figcaption><em>Tampilan ActiveX controlnya sekarang sudah rapih.<\/em><\/figcaption><\/figure><\/div>\n\n\n\n<p>Copy kode kode macro berikutnya dibawah ini, namun ingat&#8230;.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Sub PD_Click()\n    'ActiveSheet.Unprotect\n    Application.EnableEvents = False\n    CARI.Value = \"\": CARI.Activate: ListNama.Clear\n    Range(\"AA1\").Value = \"Customer\"\n    Range(\"E2\").Value = Range(\"AA2\").Value\n    Range(\"E3\").ClearContents\n    PD.BackColor = &amp;HC0C0FF\n    HD.BackColor = &amp;H8000000F&amp;\n    Item.BackColor = &amp;H8000000F&amp;\n    BARU.Caption = \"Piutang Dagang BARU\"\n    Application.EnableEvents = True\n    'ActiveSheet.Protect\nEnd Sub\n\nSub HD_Click()\n    'ActiveSheet.Unprotect\n    Application.EnableEvents = False\n    CARI.Value = \"\": CARI.Activate: ListNama.Clear\n    Range(\"AA1\").Value = \"Supplier\"\n    Range(\"E2\").Value = Range(\"AA3\").Value\n    Range(\"E3\").ClearContents\n    PD.BackColor = &amp;H8000000F&amp;\n    HD.BackColor = &amp;HC0C0FF\n    Item.BackColor = &amp;H8000000F&amp;\n    Kas_Bon.BackColor = &amp;HC0C0FF\n    BARU.Caption = \" Hutang Dagang BARU\"\n    Application.EnableEvents = True\n    'ActiveSheet.Protect\nEnd Sub\n\nPrivate Sub ITEM_Click()\n    'ActiveSheet.Unprotect\n    Application.EnableEvents = False\n    CARI.Value = \"\": CARI.Activate: ListNama.Clear\n    Range(\"AA1\").Value = \"Item\"\n    PD.BackColor = &amp;H8000000F&amp;\n    HD.BackColor = &amp;H8000000F&amp;\n    Item.BackColor = &amp;HC0C0FF\n    BARU.Caption = \"ITEM BARU\"\n    Application.EnableEvents = True\n    'ActiveSheet.Protect\nEnd Sub\n\nPrivate Sub Kas_Bon_Click()\n    Kas_Bon.BackColor = &amp;HC0C0FF\n    If Kas_Bon.Caption = \"BAYAR CASH\" Then _\n    Kas_Bon.Caption = \"NGE-BON\": Range(\"c17\").Value = \"NGE-BON\": Exit Sub\n    If Kas_Bon.Caption = \"NGE-BON\" Then _\n    Kas_Bon.Caption = \"BAYAR CASH\": Range(\"c17\").Value = \"CASH\":\nEnd Sub\n\nPrivate Sub CARI_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)\nApplication.EnableEvents = False\nCARI.Value = \"\"\nApplication.EnableEvents = True\nEnd Sub\n\nPrivate Sub CARI_Change()\nDim MyList As Variant, i As Long\n    \n    nm = Range(\"AA1\").Value\n    Set rng = Sheets(\"TABEL\").Range(nm)\n    \n    MyList = Application.Transpose(rng)\n    With ListNama\n        If CARI.Value = \"\" Then\n            .Clear\n        Else\n            .Clear\n            For i = LBound(MyList, 1) To UBound(MyList, 1)\n                If LCase(MyList(i)) Like \"*\" _\n                &amp; LCase(CARI.Value) _\n                &amp; \"*\" Then .AddItem MyList(i)\n            Next i\n        End If\n    End With\n    If ListNama.ListCount = 1 Then ListNama.Selected(0) = True\nEnd Sub\n\nPrivate Sub ListNama_Click()\n    'ActiveSheet.Unprotect\n    Application.EnableEvents = False\n    If Range(\"AA1\").Value = \"Item\" Then\n        Range(\"b20\").End(xlUp).Offset(1, 0).Value = Me.ListNama.Value\n    Else\n        Range(\"E3\").Value = Me.ListNama.Value\n    End If\n    'ActiveSheet.Protect\n    Application.EnableEvents = True\nEnd Sub\n\nPrivate Sub Baru_Click()\n    'ActiveSheet.unProtect\n    X = Range(\"AA1\").Value\n    xName = InputBox(\"Masukkan nama \" + X + \" barunya\")\n    If xName = \"\" Then Exit Sub\n\n    Application.ScreenUpdating = False\n    With Sheets(\"TABEL\")\n    If Not .Range(X).Find(xName, lookat:=xlWhole) Is Nothing Then\n        MsgBox \"Nama baru yang anda masukkan sudah ada di tabel\"\n        Exit Sub\n    End If\n    LR = .Range(X).Rows.Count + 1\n    .Range(X)(LR, 1).Value = Application.Proper(xName)\n    End With\n    If X = \"Item\" Then\n        Range(\"B20\").End(xlUp).Offset(1, 0).Value = _\n        Application.Proper(xName)\n    Else\n        Range(\"E3\").Value = Application.Proper(xName)\n    End If\n    Application.ScreenUpdating = True\n    'ActiveSheet.Protect\nEnd Sub\n\nPrivate Sub InputKeData_Click()\n    Set rngItem = Range(\"B7:B16\")\n    cnt = Application.CountA(rngItem)\n    Set sh = Sheets(\"JualBeli\")\n    Set sdt = Sheets(\"DATA\")\n    \n    'cek kesalahan\n    Call CekKesalahan\n    If Range(\"AA4\").Value = \"not oke\" Then Exit Sub\n    \n    Application.EnableEvents = False\n    Application.ScreenUpdating = False\n    \n    'persiapan di halaman HARIAN dan halaman DATA\n    idNota = Left(sh.Range(\"E2\"), 9)\n    Set rngKopi = Range(\"AA7\").Resize(cnt, 13)\n    Set awal = sdt.Range(\"B\" &amp; Rows.Count).End(xlUp).Offset(1, 0)\n    Set rngPaste = awal.Resize(cnt, 13)\n    \n    'input ke halaman DATA dan BACKUP transaksi ini\n    rngPaste.Value = rngKopi.Value\n    \n    'input KAS apabila CASH\n    If Range(\"C17\").Value = \"CASH\" Then\n        Set lunas = sdt.Range(\"B\" &amp; Rows.Count).End(xlUp)\n        lunas.Resize(1, 13).Copy\n        lunas.Offset(1, 0).PasteSpecial (xlValues)\n        lunas.Offset(1, 3).Value = \"KAS\"\n        sdt.Range(lunas.Offset(1, 5), lunas.Offset(1, 7)).ClearContents\n        lunas.Offset(1, 9).ClearContents\n        If lunas.Offset(1, 4).Value = \"PD\" Then\n            lunas.Offset(1, 8).Value = sh.Range(\"E17\").Value\n            lunas.Offset(1, 10).Value = \"DEBET\"\n        Else\n            lunas.Offset(1, 8).Value = -sh.Range(\"E17\").Value\n            lunas.Offset(1, 10).Value = \"KREDIT\"\n        End If\n    End If\n    \n    'tampilkan pesan bahwa transaksi telah masuk data\n    Application.ScreenUpdating = True\n    sdt.Select\n    rngPaste.Select\n    ActiveWindow.ScrollRow = ActiveCell.Row\n    MsgBox \"Transaksi sudah masuk ke data\"\n    sh.Select\n    \n    'tambahin nomor nota\n    Nomor = Format(Right(Range(\"E2\"), 3)) + 1\n    NomorNota = idNota + Format(Nomor, \"000\")\n    Range(\"E2\").Value = NomorNota\n    \n    'pindahin nomor nota ke helper\n    If Left(NomorNota, 1) = \"P\" Then\n        Range(\"AA2\").Value = NomorNota\n    Else\n        Range(\"AA3\").Value = NomorNota\n    End If\n    \n    'bersihkan halaman HARIAN\n    Range(\"E3,B7:D16\").ClearContents\n    CARI.Value = \"\"\n    ListNama.Clear\n    \n    'refresh Pivot Table\n    Sheets(\"PDHD\").PivotTables(\"ptPDHD\").PivotCache.Refresh\n    \n    Range(\"B7\").Select\n    \n    Application.EnableEvents = True\n    \n    'save file nya\n    ActiveWorkbook.Save\nEnd Sub\n\nPrivate Sub CekKesalahan()\n    'cek apakah masih ada kolom yang diperlukan tapi kosong\nIf Range(\"E1\").Value = \"\" _\n    Or Range(\"E2\").Value = \"\" _\n    Or Range(\"E3\").Value = \"\" _\n    Or cnt = 0 _\n    Or Application.CountA(rngItem.Offset(0, 1)) &lt;&gt; cnt _\n    Or Application.CountA(rngItem.Offset(0, 2)) &lt;&gt; cnt Then\n    MsgBox \"Ada kolom yang kosong\"\n    Range(\"AA4\").Value = \"not oke\"\n    Exit Sub\nElse\n    Range(\"AA4\").Value = \"oke\"\nEnd If\n\n'cek apakah nomor nota yang akan di input sudah ada di data\nSet c = Sheets(\"DATA\").Columns(2).Find(Range(\"E2\").Value, lookat:=xlWhole)\nIf Not c Is Nothing Then\n    MsgBox \"Nomor Nota \" + Range(\"E2\").Value + \" sudah ada di data\"\n    Range(\"AA4\").Value = \"not oke\"\n    Exit Sub\nElse\n    Range(\"AA4\").Value = \"oke\"\nEnd If\n\nEnd Sub\n\nPrivate Sub Worksheet_Activate()\n    Call SetActiveXControls\n    Call tmpJualBeli\nEnd Sub\n\nSub tmpJualBeli()\nApplication.EnableEvents = False\nWith Sheets(\"JualBeli\")\nSet rg = .Range(\"AA7:AA16\")\nrg.Offset(0, 0).Formula = \"=$E$1\"\nrg.Offset(0, 1).Formula = \"=$E$2\"\nrg.Offset(0, 2).Formula = \"=$E$3\"\nrg.Offset(0, 3).Value = \"STOK\"\nrg.Offset(0, 4).Formula = _\n\"=IF(LEFT(AB7,1)=\"\"P\"\",\"\"PD\"\",\"\"HD\"\")\"\nrg.Offset(0, 5).Formula = \"=B7\"\nrg.Offset(0, 6).Formula = \"=C7\"\nrg.Offset(0, 7).Formula = \"=D7\"\nrg.Offset(0, 8).Formula = \"=IF(AE7=\"\"PD\"\",-E7,E7)\"\nrg.Offset(0, 9).Formula = \"=IF(AE7=\"\"PD\"\",-AG7,AG7)\"\nrg.Offset(0, 10).Formula = _\n\"=IF(AE7=\"\"PD\"\",\"\"KREDIT\"\",\"\"DEBET\"\")\"\nrg.Offset(0, 11).Formula = _\n\"=DATEVALUE(CONCATENATE(\"\"01-\"\",MID(AB7,6,2),\"\"-\"\",MID(AB7,4,2)))\"\nrg.Offset(0, 12).Formula = _\n\"=IF($C$17=\"\"CASH\"\",CONCATENATE(TEXT(AA7,\"\"yymm\"\"),\"\"Lunas\"\"),\"\"\"\")\"\nEnd With\nApplication.EnableEvents = True\nEnd Sub\n<\/code><\/pre>\n\n\n\n<p>sebelum di paste ke VBA Editor, pastikan kursor berada dibawah text &#8220;End Sub&#8221; dari macro &#8220;SetActiveXControls&#8221;.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><a href=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-04_macro-for-activex-controls.png\"><img loading=\"lazy\" decoding=\"async\" width=\"554\" height=\"494\" src=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-04_macro-for-activex-controls.png\" alt=\"\" class=\"wp-image-1303\"\/><\/a><\/figure><\/div>\n\n\n\n<p>Pak Adi masih menambahkan satu buah Macro lagi yang gunanya untuk membuat nomor nota secara otomatis apabila hari berganti. Namun kode ini tidak di taruh di Sheet5 modul melainkan di ThisWorkbook modul.<\/p>\n\n\n\n<p>Jadi di Visual Basic Editor window <span style=\"background-color: LightGrey\">Project &#8211; VBAProject<\/span>, double click <span style=\"background-color: LightGrey\">ThisWorkbook<\/span> agar terbuka halaman kosong untuk di isi kode macro, copy kode dibawah ini :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Private Sub Workbook_Open()\nDim MaxDate As Date\nMaxDate = WorksheetFunction. _\nMax(Sheets(\"DATA\").Range(\"B1:B50000\"))\nTglAkhir = Format(MaxDate, \"yymmdd\")\nNomorPatok = Format(Date, \"yymmdd\")\nIf NomorPatok &gt; TglAkhir Then\n    idPD = \"PD-\"\n    idHD = \"HD-\"\n    With Sheets(\"JualBeli\")\n        '.Unprotect\n        .Range(\"AA2\").Value = idPD + NomorPatok + \"001\"\n        .Range(\"AA3\").Value = idHD + NomorPatok + \"001\"\n        .Range(\"E2:E3\").ClearContents\n        '.Protect\n        ActiveWorkbook.Save\n    End With\n    End If\nEnd Sub<\/code><\/pre>\n\n\n\n<p>Lalu paste di halaman kosong <span style=\"background-color: LightGrey\">ThisWorkbook<\/span> modul tsb. Hasilnya seperti pada gambar dibawah ini.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><a href=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-05_macro-invoice-number-increment.png\"><img loading=\"lazy\" decoding=\"async\" width=\"758\" height=\"559\" src=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-05_macro-invoice-number-increment.png\" alt=\"\" class=\"wp-image-1304\"\/><\/a><\/figure><\/div>\n\n\n\n<p>Karena tampilan-nya kelihatan terlalu polos, pak Adi mem-format cell cell di halaman &#8220;JualBeli&#8221; agar tampilannya sesuai dengan yang dia sukai. Seperti yang terlihat pada gambar dibawah ini.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1140\" height=\"493\" src=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-05b_form-input-jual-beli-excel.png\" alt=\"\" class=\"wp-image-1123\"\/><\/figure><\/div>\n\n\n\n<p>Selanjut-nya pak Adi mulai test-run kode kode macro input form jual-beli nya untuk mengetahui apakah macro berjalan sesuai dengan yang diharapkan.<\/p>\n\n\n\n<!--nextpage-->\n\n\n\n<h5 class=\"wp-block-heading\">TEST RUN<\/h5>\n\n\n\n<p>Untuk test-run, pak Adi men-save file nya terlebih dahulu, menutup aplikasi Excel, lalu kembali lagi mebuka file Sample03.xlsb tsb. <\/p>\n\n\n\n<p>Ketika file di buka, kode Sub Workbook_Open akan mengecek apakah tanggal terakhir di halaman DATA = tanggal &#8220;hari ini&#8221;. Apabila tidak sama, maka kode membuat nomor nota PD- dan HD-, tahun ini dua digit, bulan ini dua digit, tanggal hari ini dua digit &#8211; nomor nota 001&#8243;.<\/p>\n\n\n\n<p>Semisal toko pak Adi buka pagi di &#8220;hari ini&#8221; (sebut saja &#8220;hari ini&#8221; adalah tanggal 8 Maret 2021) dan untuk pertama kalinya di &#8220;hari ini&#8221; pak Adi membuka file Sample03.xlsb, dimana selanjutnya di halaman &#8220;JualBeli&#8221; (Form Input Jual Beli) dia meng-klik tombol PD, maka akan terbaca nomor notanya : PD-210308001 (artinya : ini adalah nota Piutang Dagang tahun 21, bln 03, tgl 8, nomor 1). Apabila dia meng-klik tombol HD, maka akan terbaca nomor notanya : HD-210308001. Seperti yang terlihat pada animasi dibawah ini &#8230;.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1153\" height=\"490\" src=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-06_buy-and-sell-button.gif\" alt=\"\" class=\"wp-image-1306\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li><span style=\"text-decoration: underline;\"><strong>Contoh kasus input Customer, Supplier dan Stok baru<\/strong><\/span>.<\/li><\/ul>\n\n\n\n<p>Tante Linda adalah nama Customer baru, Om Pimpah adalah nama Supplier baru, dan Jengkol Bangkok adalah nama Item baru.<\/p>\n\n\n\n<p>Ketika dicari nama nama tsb di box CARI, sudah pasti tidak akan ditemukan hasilnya karena nama nama tsb tidak ada di Named Range Customer, Supplier dan Item, Yakni daftar nama nama yang terdapat di halaman TABEL.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"298\" height=\"287\" src=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-07_search-box-for-searching-name.gif\" alt=\"\" class=\"wp-image-1307\"\/><\/figure><\/div>\n\n\n\n<p>Jadi sekarang pak Adi meng-input nama nama tsb. Tidak lupa untuk meng-klik terlebih dahulu tombol PD \/ HD \/ Item agar sewaktu di input, nama-nya masuk sesuai dengan kategori-nya.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" src=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-08_inputting-new-customer-name.gif\" alt=\"\" class=\"wp-image-1308\"\/><\/figure><\/div>\n\n\n\n<p>Seperti yang terlihat pada animasi diatas, kalau kita terlebih dahulu meng-aktifkan halaman TABEL, terlihat customer terakhir berada di baris 263 dengan nama Aggil. <\/p>\n\n\n\n<p>Di halaman JualBeli, karena tombol sudah terbaca Piutang Dagang BARU, jadi bisa langsung di klik tombol tsb lalu ketik tante linda pada input box yang tampil, lalu klik OK. Kalau kita cek ke halaman TABEL, terlihat nama Tante Linda sudah ada di kolom Customer baris terakhir, baris 264.<\/p>\n\n\n\n<p>Sekarang input Supplier baru, Om Pimpah.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" src=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-09_inputting-new-supplier-name.gif\" alt=\"\" class=\"wp-image-1309\"\/><\/figure><\/div>\n\n\n\n<p>Kalau terlebih dahulu kita cek halaman TABEL, supplier terakhir-nya ada di baris 32 dengan nama PT. Angin Ribut. Di halaman JualBeli, klik tombol HD, klik tombol Hutang Dagang BARU, lalu ketik om pimpah, lalu klik OK. Kalau kita cek ke halaman TABEL, terlihat nama tsb ada di baris, terakhir, baris 33 kolom Supplier pada halaman.<\/p>\n\n\n\n<p>Sekarang input Item \/ Stok baru, Jengkol Bangkok.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" src=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-10_inputting-new-product-name.gif\" alt=\"\" class=\"wp-image-1310\"\/><\/figure><\/div>\n\n\n\n<p>Kalau kita terlebih dahulu aktifkan halaman TABEL, terlihat Item terakhir-nya ada di baris 293 dengan nama Pork Bacon. Setelah di halaman JualBeli kita klik tombol Item, klik tombol Item BARU, lalu ketik jengkol bangkok, lalu klik OK&#8230;. maka ketika kita cek ke halaman TABEL, terlihat nama Jengkol Bangkok ada dibawah nama Pork Bacon, baris 294.<\/p>\n\n\n\n<p>Sekarang nama nama tsb sudah berada di Named Range Customer, Supplier dan Item. Selanjutnya pak Adi mengecek apakah mengetik di box CARI, nama tsb akan keluar di box ListNama.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"532\" height=\"291\" src=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-11_excel-form-search-box.gif\" alt=\"\" class=\"wp-image-1128\"\/><\/figure><\/div>\n\n\n\n<p>Pada animasi diatas, terlihat hasil ketikan di box CARI menghasilkan nama-nya yang muncul di box ListNama. Apabila box ListNama menghasilkan lebih dari satu nama, maka ketika salah satu nama-nya di klik, kode mengisi nama tsb di bawah nomor nota. Apabila box ListNama menghasilkan hanya satu nama, kode langsung mengisi nama tsb dibawah nomor nota. Demikian pula hal-nya dengan Item, beda-nya kode mengisi nama Item tsb di baris kosong terakhir kolom ITEM.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><span style=\"text-decoration: underline;\"><strong>Contoh kasus input Penjualan<\/strong><\/span><\/li><\/ul>\n\n\n\n<p>Sudah seminggu pak Adi tidak ada jual barang &#8211; tidak ada pula beli barang. <\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"932\" height=\"195\" src=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-12_product-opening-balance-data.png\" alt=\"\" class=\"wp-image-1312\"\/><\/figure><\/div>\n\n\n\n<p>Barulah pada tanggal 8 Maret 2021, customer Agus Jova membeli Item Aspic sebanyak 10 dengan harga Rp 25.000 secara cash.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"488\" height=\"380\" src=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-13_product-opening-balance.png\" alt=\"\" class=\"wp-image-1313\"\/><figcaption><em>Saldo item Aspic adalah 39<\/em><\/figcaption><\/figure><\/div>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"539\" height=\"377\" src=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-14_customer-opening-balance.png\" alt=\"\" class=\"wp-image-1314\"\/><figcaption><em>Saldo PD Agus Jova sebesar Rp 640.000<\/em><\/figcaption><\/figure><\/div>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1149\" height=\"505\" src=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-15_input-customer-transaction.gif\" alt=\"\" class=\"wp-image-1315\"\/><\/figure>\n\n\n\n<p>Klik PD, ketik agus, pilih nama Agus Jova, klik NGE-BON agar menjadi BAYAR CASH, klik Item, ketik aspic, isi QTY, isi HARGA\/PRICE, klik Input Ke Data. Kode menampilkan halaman DATA dan terlihat transaksi ini terbaca 2103LUNAS. Klik OK, kode menampilkan halaman JualBeli kembali dan terlihat nomor notanya sekarang adalah PD-210308002.<\/p>\n\n\n\n<p>Karena pembelian ini cash, maka piutang Agus tidak bertambah. Tetep sama seperti pada gambar saldo PD Agus Jova diatas. Sedangkan Item Aspic di halaman STOK tentunya akan berkurang dari 39 menjadi 29 karena 10 sudah dijual ke Agus. Seperti terlihat pada gambar dibawah ini :<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"580\" height=\"483\" src=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-16_pivot-table-product-balance.png\" alt=\"\" class=\"wp-image-1317\"\/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li><span style=\"text-decoration: underline;\"><strong>Contoh kasus input Pembelian<\/strong><\/span><\/li><\/ul>\n\n\n\n<p>Pak Adi membeli dari pak Fauzan item Bread Crumb sebanyak 5 seharga Rp 30.000 dan item Capon sebanyak 10 seharga Rp 15.000 secara ngebon.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"585\" height=\"508\" src=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-17_product-opening-balance.png\" alt=\"\" class=\"wp-image-1318\"\/><figcaption><em>Saldo stok Bread Crumbs ada 11 &#8211; Capon stoknya kosong<\/em><\/figcaption><\/figure><\/div>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"544\" height=\"370\" src=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-18_supplier-opening-balance.png\" alt=\"\" class=\"wp-image-1319\"\/><figcaption><em>Saldo awal hutang pak Adi ke Fauzan sebesar Rp 150.000<\/em><\/figcaption><\/figure><\/div>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1099\" height=\"429\" src=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-19_inputting-supplier-transaction.gif\" alt=\"\" class=\"wp-image-1320\"\/><\/figure><\/div>\n\n\n\n<p>Klik HD, ketik fauzan, pilih nama Fauzan Novianti, klik BAYAR CASH agar menjadi NGE-BON, klik Item, ketik bread c, hapus bread c, ketik capon, lalu isi QTY dan PRICE masing2, klik Input Ke Data. Kode menampilkan halaman DATA. Klik OK, kode menampilkan halaman JualBeli kembali dan terlihat nomor notanya sekarang adalah HD-210308002.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"620\" height=\"482\" src=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-20_pivot-table-product-balance.png\" alt=\"\" class=\"wp-image-1322\"\/><figcaption><em>Stok item Bread Crumbs menjadi 16 dan item Capon menjadi 10<\/em><\/figcaption><\/figure><\/div>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"545\" height=\"481\" src=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-21_pivot-table-supplier-balance.png\" alt=\"\" class=\"wp-image-1323\"\/><figcaption><em>Hutang pak Adi ke Fauzan menjadi Rp 300.000<\/em><\/figcaption><\/figure><\/div>\n\n\n\n<p>Jadi disini bisa kita lihat, macro untuk Form Input Jual Beli di Excel yang pak Adi buat berjalan sesuai dengan yang diharapkan. Berikut ini mengenai hal pembacaan database nya di halaman DATA.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"969\" height=\"246\" src=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04-22_data-source-pivot-table.png\" alt=\"\" class=\"wp-image-1324\"\/><\/figure><\/div>\n\n\n\n<p>Baris 8821 adalah data penjualan ke pak Agus dimana nilai SUM-nya minus dan nilai QTY nya juga minus.<br>Baris 8822 adalah data pak Agus bayar, dimana nilai SUM-nya plus.<br>Terbaca 2103Lunas karena pak Agus beli-nya bayar cash.<\/p>\n\n\n\n<p>Baris 8823 dan 8824 adalah data pembelian pak Adi dari pak Fauzan dimana nilai SUM-nya plus dan nilai QTY nya juga plus. Tidak terbaca lunas karena pak Adi beli nya nge-bon.<\/p>\n\n\n\n<p>Selesai sudah pak Adi test-run kode macro untuk Form Input Jual Beli di Excel. Pada <a href=\"https:\/\/indonesiangems.com\/blog\/excel-userform-melalui-visual-basic-editor\/\">halaman berikutnya<\/a>, pak Adi akan membuat UserForm melalui Visual Basic Editor (VBA). UserForm ini digunakan untuk input pembayaran customer\/supplier (hutang piutang).<\/p>\n\n\n\n<p>Apabila ada pembaca yang tidak jelas ataupun ada yang ingin ditanyakan terkait topik ini, silahkan tulis di kolom Comment. Saya akan berusaha untuk bisa menjawabnya.<\/p>\n\n\n\n<div style=\"max-width:800px;text-align:right;\"><button style=\"width:auto\"><a style=\"color:white;\" href=\"https:\/\/www.indonesiangems.com\/blog\/download\/count.php?nm=Sample03\">Download Excel Macro Form Jual Beli<\/a><\/button><\/div>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Testing halaman 4<\/p>\n","protected":false},"author":1,"featured_media":967,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11,10],"tags":[],"class_list":["post-286","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-aplikasi-excel-id","category-id","tw-post-has-image-20-9","tw-meta-no-icon"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v15.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Macro untuk form input di Excel (transaksi jual beli) - part 4<\/title>\n<meta name=\"description\" content=\"Membuat kode macro untuk form input jual beli di Excel. Menggunakan ActiveX controls. Disertai sample file yang bisa di download.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/indonesiangems.com\/blog\/macro-untuk-form-input-di-excel\/\" \/>\n<link rel=\"next\" href=\"https:\/\/indonesiangems.com\/blog\/macro-untuk-form-input-di-excel\/2\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Macro untuk form input di Excel (transaksi jual beli) - part 4\" \/>\n<meta property=\"og:description\" content=\"Membuat kode macro untuk form input jual beli di Excel. Menggunakan ActiveX controls. Disertai sample file yang bisa di download.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/indonesiangems.com\/blog\/macro-untuk-form-input-di-excel\/\" \/>\n<meta property=\"og:site_name\" content=\"Indonesian Gems Blog\" \/>\n<meta property=\"article:published_time\" content=\"2021-02-25T19:18:07+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-03-18T22:24:30+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04feature.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"800\" \/>\n\t<meta property=\"og:image:height\" content=\"200\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\">\n\t<meta name=\"twitter:data1\" content=\"16 minutes\">\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebSite\",\"@id\":\"https:\/\/indonesiangems.com\/blog\/#website\",\"url\":\"https:\/\/indonesiangems.com\/blog\/\",\"name\":\"Indonesian Gems Blog\",\"description\":\"just want to share what I&#039;ve done so far\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":\"https:\/\/indonesiangems.com\/blog\/?s={search_term_string}\",\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/indonesiangems.com\/blog\/macro-untuk-form-input-di-excel\/#primaryimage\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/indonesiangems.com\/blog\/wp-content\/uploads\/2021\/03\/04feature.jpg\",\"width\":800,\"height\":200},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/indonesiangems.com\/blog\/macro-untuk-form-input-di-excel\/#webpage\",\"url\":\"https:\/\/indonesiangems.com\/blog\/macro-untuk-form-input-di-excel\/\",\"name\":\"Macro untuk form input di Excel (transaksi jual beli) - part 4\",\"isPartOf\":{\"@id\":\"https:\/\/indonesiangems.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/indonesiangems.com\/blog\/macro-untuk-form-input-di-excel\/#primaryimage\"},\"datePublished\":\"2021-02-25T19:18:07+00:00\",\"dateModified\":\"2021-03-18T22:24:30+00:00\",\"author\":{\"@id\":\"https:\/\/indonesiangems.com\/blog\/#\/schema\/person\/96961e74ef7272e067370a6e6c4d0efd\"},\"description\":\"Membuat kode macro untuk form input jual beli di Excel. Menggunakan ActiveX controls. Disertai sample file yang bisa di download.\",\"breadcrumb\":{\"@id\":\"https:\/\/indonesiangems.com\/blog\/macro-untuk-form-input-di-excel\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/indonesiangems.com\/blog\/macro-untuk-form-input-di-excel\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/indonesiangems.com\/blog\/macro-untuk-form-input-di-excel\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"item\":{\"@type\":\"WebPage\",\"@id\":\"https:\/\/indonesiangems.com\/blog\/\",\"url\":\"https:\/\/indonesiangems.com\/blog\/\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"position\":2,\"item\":{\"@type\":\"WebPage\",\"@id\":\"https:\/\/indonesiangems.com\/blog\/macro-untuk-form-input-di-excel\/\",\"url\":\"https:\/\/indonesiangems.com\/blog\/macro-untuk-form-input-di-excel\/\",\"name\":\"Macro untuk form input di Excel (transaksi jual beli) - part 4\"}}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/indonesiangems.com\/blog\/#\/schema\/person\/96961e74ef7272e067370a6e6c4d0efd\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/indonesiangems.com\/blog\/#personlogo\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/73e0be4b74509a0250ea0115a8fb8b5a132592a52df5ccc0013ac50eb087f578?s=96&d=mm&r=g\",\"caption\":\"admin\"},\"sameAs\":[\"https:\/\/indonesiangems.com\/blog\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","_links":{"self":[{"href":"https:\/\/indonesiangems.com\/blog\/wp-json\/wp\/v2\/posts\/286","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/indonesiangems.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/indonesiangems.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/indonesiangems.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/indonesiangems.com\/blog\/wp-json\/wp\/v2\/comments?post=286"}],"version-history":[{"count":61,"href":"https:\/\/indonesiangems.com\/blog\/wp-json\/wp\/v2\/posts\/286\/revisions"}],"predecessor-version":[{"id":1616,"href":"https:\/\/indonesiangems.com\/blog\/wp-json\/wp\/v2\/posts\/286\/revisions\/1616"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/indonesiangems.com\/blog\/wp-json\/wp\/v2\/media\/967"}],"wp:attachment":[{"href":"https:\/\/indonesiangems.com\/blog\/wp-json\/wp\/v2\/media?parent=286"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/indonesiangems.com\/blog\/wp-json\/wp\/v2\/categories?post=286"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/indonesiangems.com\/blog\/wp-json\/wp\/v2\/tags?post=286"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}