{"id":30684,"date":"2025-06-20T09:43:01","date_gmt":"2025-06-20T02:43:01","guid":{"rendered":"https:\/\/interdata.vn\/blog\/?p=30684"},"modified":"2025-06-20T09:45:23","modified_gmt":"2025-06-20T02:45:23","slug":"lap-trinh-vba-trong-access","status":"publish","type":"post","link":"https:\/\/interdata.vn\/blog\/lap-trinh-vba-trong-access\/","title":{"rendered":"L\u1eadp tr\u00ecnh VBA trong Access: H\u01b0\u1edbng d\u1eabn c\u01a1 b\u1ea3n \u0111\u1ebfn n\u00e2ng cao"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_85 counter-hierarchy ez-toc-counter ez-toc-white ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">N\u1ed8I DUNG<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 eztoc-toggle-hide-by-default' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/interdata.vn\/blog\/lap-trinh-vba-trong-access\/#Lap-trinh-VBA-trong-Access-la-gi\" >L\u1eadp tr\u00ecnh VBA trong Access l\u00e0 g\u00ec?<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/interdata.vn\/blog\/lap-trinh-vba-trong-access\/#Ngon-ngu-VBA-va-moi-truong-Access\" >Ng\u00f4n ng\u1eef VBA v\u00e0 m\u00f4i tr\u01b0\u1eddng Access<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/interdata.vn\/blog\/lap-trinh-vba-trong-access\/#Suc-manh-cua-tu-dong-hoa\" >S\u1ee9c m\u1ea1nh c\u1ee7a t\u1ef1 \u0111\u1ed9ng h\u00f3a<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/interdata.vn\/blog\/lap-trinh-vba-trong-access\/#Tai-sao-nen-hoc-VBA-trong-Access\" >T\u1ea1i sao n\u00ean h\u1ecdc VBA trong Access?<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/interdata.vn\/blog\/lap-trinh-vba-trong-access\/#Tang-toc-quy-trinh-lam-viec\" >T\u0103ng t\u1ed1c quy tr\u00ecnh l\u00e0m vi\u1ec7c<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/interdata.vn\/blog\/lap-trinh-vba-trong-access\/#Giam-thieu-sai-sot-con-nguoi\" >Gi\u1ea3m thi\u1ec3u sai s\u00f3t con ng\u01b0\u1eddi<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/interdata.vn\/blog\/lap-trinh-vba-trong-access\/#Tao-ung-dung-quan-ly-chuyen-nghiep\" >T\u1ea1o \u1ee9ng d\u1ee5ng qu\u1ea3n l\u00fd chuy\u00ean nghi\u1ec7p<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/interdata.vn\/blog\/lap-trinh-vba-trong-access\/#Cach-bat-dau-viet-VBA-trong-Access\" >C\u00e1ch b\u1eaft \u0111\u1ea7u vi\u1ebft VBA trong Access<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/interdata.vn\/blog\/lap-trinh-vba-trong-access\/#Mo-cua-so-Visual-Basic-Editor-VBE\" >M\u1edf c\u1eeda s\u1ed5 Visual Basic Editor (VBE)<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/interdata.vn\/blog\/lap-trinh-vba-trong-access\/#Chen-mot-Module-moi\" >Ch\u00e8n m\u1ed9t Module m\u1edbi<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/interdata.vn\/blog\/lap-trinh-vba-trong-access\/#Viet-thu-tuc-Sub-%E2%80%9CHello-World%E2%80%9D-dau-tien\" >Vi\u1ebft th\u1ee7 t\u1ee5c Sub &#8220;Hello World&#8221; \u0111\u1ea7u ti\u00ean<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/interdata.vn\/blog\/lap-trinh-vba-trong-access\/#Buoc-4-Them-code-kiem-tra-du-lieu-Validation\" >B\u01b0\u1edbc 4: Th\u00eam code ki\u1ec3m tra d\u1eef li\u1ec7u (Validation)<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/interdata.vn\/blog\/lap-trinh-vba-trong-access\/#Nhung-doan-code-VBA-mau-huu-ich\" >Nh\u1eefng \u0111o\u1ea1n code VBA m\u1eabu h\u1eefu \u00edch<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/interdata.vn\/blog\/lap-trinh-vba-trong-access\/#Code-mo-mot-FormReport-theo-dieu-kien\" >Code m\u1edf m\u1ed9t Form\/Report theo \u0111i\u1ec1u ki\u1ec7n<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/interdata.vn\/blog\/lap-trinh-vba-trong-access\/#Code-tim-kiem-du-lieu-tren-Form\" >Code t\u00ecm ki\u1ebfm d\u1eef li\u1ec7u tr\u00ean Form<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"https:\/\/interdata.vn\/blog\/lap-trinh-vba-trong-access\/#Code-xuat-du-lieu-ra-Excel\" >Code xu\u1ea5t d\u1eef li\u1ec7u ra Excel<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-17\" href=\"https:\/\/interdata.vn\/blog\/lap-trinh-vba-trong-access\/#Code-gui-email-tu-dong-tu-Access\" >Code g\u1eedi email t\u1ef1 \u0111\u1ed9ng t\u1eeb Access<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-18\" href=\"https:\/\/interdata.vn\/blog\/lap-trinh-vba-trong-access\/#Nhung-loi-thuong-gap-va-cach-xu-ly\" >Nh\u1eefng l\u1ed7i th\u01b0\u1eddng g\u1eb7p v\u00e0 c\u00e1ch x\u1eed l\u00fd<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-19\" href=\"https:\/\/interdata.vn\/blog\/lap-trinh-vba-trong-access\/#Loi-cu-phap-Compile-Error\" >L\u1ed7i c\u00fa ph\u00e1p (Compile Error)<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-20\" href=\"https:\/\/interdata.vn\/blog\/lap-trinh-vba-trong-access\/#Loi-khi-chay-Runtime-Error\" >L\u1ed7i khi ch\u1ea1y (Runtime Error)<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-21\" href=\"https:\/\/interdata.vn\/blog\/lap-trinh-vba-trong-access\/#Meo-su-dung-cua-so-Debug\" >M\u1eb9o s\u1eed d\u1ee5ng c\u1eeda s\u1ed5 Debug<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-22\" href=\"https:\/\/interdata.vn\/blog\/lap-trinh-vba-trong-access\/#Tai-nguyen-hoc-VBA-Access-hieu-qua\" >T\u00e0i nguy\u00ean h\u1ecdc VBA Access hi\u1ec7u qu\u1ea3<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-23\" href=\"https:\/\/interdata.vn\/blog\/lap-trinh-vba-trong-access\/#Ket-luan\" >K\u1ebft lu\u1eadn<\/a><\/li><\/ul><\/nav><\/div>\n<p>B\u1ea1n c\u00f3 \u0111ang d\u00e0nh h\u00e0ng gi\u1edd m\u1ed7i tu\u1ea7n cho c\u00e1c t\u00e1c v\u1ee5 l\u1eb7p \u0111i l\u1eb7p l\u1ea1i trong Microsoft Access? Vi\u1ec7c h\u1ecdc <a href=\"https:\/\/interdata.vn\/blog\/lap-trinh-la-gi\/\">l\u1eadp tr\u00ecnh<\/a> VBA s\u1ebd gi\u00fap b\u1ea1n t\u1ef1 \u0111\u1ed9ng h\u00f3a g\u1ea7n nh\u01b0 m\u1ecdi quy tr\u00ecnh, t\u1eeb t\u1ea1o b\u00e1o c\u00e1o ph\u1ee9c t\u1ea1p \u0111\u1ebfn qu\u1ea3n l\u00fd d\u1eef li\u1ec7u ch\u1ec9 b\u1eb1ng m\u1ed9t c\u00fa nh\u1ea5p chu\u1ed9t. B\u00e0i vi\u1ebft n\u00e0y l\u00e0 m\u1ed9t h\u01b0\u1edbng d\u1eabn to\u00e0n di\u1ec7n, s\u1ebd \u0111\u01b0a b\u1ea1n \u0111i t\u1eeb nh\u1eefng kh\u00e1i ni\u1ec7m c\u01a1 b\u1ea3n nh\u1ea5t \u0111\u1ebfn vi\u1ec7c x\u00e2y d\u1ef1ng \u1ee9ng d\u1ee5ng th\u1ef1c t\u1ebf b\u1eb1ng VBA trong Access.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Lap-trinh-VBA-trong-Access-la-gi\"><\/span>L\u1eadp tr\u00ecnh VBA trong Access l\u00e0 g\u00ec?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>L\u1eadp tr\u00ecnh VBA trong Access l\u00e0 vi\u1ec7c s\u1eed d\u1ee5ng ng\u00f4n ng\u1eef Visual Basic for Applications (VBA) \u0111\u1ec3 th\u00eam c\u00e1c t\u00ednh n\u0103ng v\u00e0 t\u00f9y ch\u1ec9nh v\u00e0o c\u01a1 s\u1edf d\u1eef li\u1ec7u Microsoft Access. VBA cho ph\u00e9p ng\u01b0\u1eddi d\u00f9ng vi\u1ebft c\u00e1c \u0111o\u1ea1n m\u00e3 \u0111\u1ec3 t\u1ef1 \u0111\u1ed9ng h\u00f3a t\u00e1c v\u1ee5, <a href=\"https:\/\/interdata.vn\/blog\/data-preprocessing-la-gi\/\">x\u1eed l\u00fd d\u1eef li\u1ec7u<\/a>, t\u1ea1o c\u00e1c <a href=\"https:\/\/interdata.vn\/blog\/ui-la-gi\/\">giao di\u1ec7n ng\u01b0\u1eddi d\u00f9ng<\/a> t\u00f9y ch\u1ec9nh v\u00e0 th\u1ef1c hi\u1ec7n nhi\u1ec1u ch\u1ee9c n\u0103ng kh\u00e1c m\u00e0 kh\u00f4ng th\u1ec3 th\u1ef1c hi\u1ec7n b\u1eb1ng c\u00e1c c\u00f4ng c\u1ee5 giao di\u1ec7n th\u00f4ng th\u01b0\u1eddng c\u1ee7a Access.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2025\/06\/lap-trinh-vba-trong-access.jpg\" alt=\"L\u1eadp tr\u00ecnh VBA trong Access\" width=\"600\" height=\"400\" class=\"aligncenter size-full wp-image-30685\" title=\"\" srcset=\"https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2025\/06\/lap-trinh-vba-trong-access.jpg 600w, https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2025\/06\/lap-trinh-vba-trong-access-300x200.jpg 300w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/p>\n<h3><span class=\"ez-toc-section\" id=\"Ngon-ngu-VBA-va-moi-truong-Access\"><\/span>Ng\u00f4n ng\u1eef VBA v\u00e0 m\u00f4i tr\u01b0\u1eddng Access<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>H\u00e3y h\u00ecnh dung Access l\u00e0 m\u1ed9t c\u00f4ng x\u01b0\u1edfng v\u1edbi \u0111\u1ea7y \u0111\u1ee7 m\u00e1y m\u00f3c (Tables, Queries, Forms, Reports). VBA ch\u00ednh l\u00e0 ng\u01b0\u1eddi k\u1ef9 s\u01b0 l\u1eadp tr\u00ecnh, ng\u01b0\u1eddi vi\u1ebft ra c\u00e1c ch\u1ec9 th\u1ecb \u0111\u1ec3 nh\u1eefng c\u1ed7 m\u00e1y n\u00e0y ph\u1ed1i h\u1ee3p v\u1edbi nhau m\u1ed9t c\u00e1ch nh\u1ecbp nh\u00e0ng. S\u1ef1 k\u1ebft h\u1ee3p n\u00e0y bi\u1ebfn Access t\u1eeb m\u1ed9t n\u01a1i l\u01b0u tr\u1eef d\u1eef li\u1ec7u \u0111\u01a1n thu\u1ea7n th\u00e0nh m\u1ed9t ph\u1ea7n m\u1ec1m \u1ee9ng d\u1ee5ng m\u1ea1nh m\u1ebd.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Suc-manh-cua-tu-dong-hoa\"><\/span>S\u1ee9c m\u1ea1nh c\u1ee7a t\u1ef1 \u0111\u1ed9ng h\u00f3a<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Thay v\u00ec ph\u1ea3i th\u1ef1c hi\u1ec7n 20 b\u01b0\u1edbc th\u1ee7 c\u00f4ng \u0111\u1ec3 t\u1ea1o m\u1ed9t b\u00e1o c\u00e1o t\u1ed5ng h\u1ee3p cu\u1ed1i th\u00e1ng, b\u1ea1n c\u00f3 th\u1ec3 vi\u1ebft m\u1ed9t \u0111o\u1ea1n m\u00e3 VBA \u0111\u1ec3 th\u1ef1c hi\u1ec7n to\u00e0n b\u1ed9 c\u00f4ng vi\u1ec7c \u0111\u00f3 ch\u1ec9 v\u1edbi m\u1ed9t n\u00fat b\u1ea5m. \u0110i\u1ec1u n\u00e0y kh\u00f4ng ch\u1ec9 ti\u1ebft ki\u1ec7m th\u1eddi gian m\u00e0 c\u00f2n \u0111\u1ea3m b\u1ea3o t\u00ednh nh\u1ea5t qu\u00e1n v\u00e0 ch\u00ednh x\u00e1c cho m\u1ecdi l\u1ea7n th\u1ef1c hi\u1ec7n, lo\u1ea1i b\u1ecf ho\u00e0n to\u00e0n c\u00e1c l\u1ed7i do con ng\u01b0\u1eddi.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Tai-sao-nen-hoc-VBA-trong-Access\"><\/span>T\u1ea1i sao n\u00ean h\u1ecdc VBA trong Access?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0110\u1ea7u t\u01b0 th\u1eddi gian \u0111\u1ec3 h\u1ecdc VBA trong Access mang l\u1ea1i nh\u1eefng l\u1ee3i \u00edch thi\u1ebft th\u1ef1c v\u00e0 c\u00f3 th\u1ec3 \u0111o l\u01b0\u1eddng \u0111\u01b0\u1ee3c trong c\u00f4ng vi\u1ec7c h\u00e0ng ng\u00e0y. K\u1ef9 n\u0103ng n\u00e0y gi\u00fap b\u1ea1n gi\u1ea3i quy\u1ebft c\u00e1c v\u1ea5n \u0111\u1ec1 m\u00e0 nh\u1eefng c\u00f4ng c\u1ee5 c\u01a1 b\u1ea3n kh\u00f4ng th\u1ec3 l\u00e0m \u0111\u01b0\u1ee3c, tr\u1ef1c ti\u1ebfp n\u00e2ng cao hi\u1ec7u su\u1ea5t c\u00f4ng vi\u1ec7c c\u1ee7a b\u1ea1n v\u00e0 \u0111\u1ed3ng nghi\u1ec7p.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2025\/06\/lap-trinh-vba-trong-access-01.jpg\" alt=\"L\u1eadp tr\u00ecnh VBA trong Access\" width=\"600\" height=\"400\" class=\"aligncenter size-full wp-image-30686\" title=\"\" srcset=\"https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2025\/06\/lap-trinh-vba-trong-access-01.jpg 600w, https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2025\/06\/lap-trinh-vba-trong-access-01-300x200.jpg 300w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/p>\n<h3><span class=\"ez-toc-section\" id=\"Tang-toc-quy-trinh-lam-viec\"><\/span>T\u0103ng t\u1ed1c quy tr\u00ecnh l\u00e0m vi\u1ec7c<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>C\u00e1c quy tr\u00ecnh th\u1ee7 c\u00f4ng nh\u01b0 nh\u1eadp li\u1ec7u t\u1eeb file Excel, l\u1ecdc d\u1eef li\u1ec7u theo nhi\u1ec1u \u0111i\u1ec1u ki\u1ec7n ph\u1ee9c t\u1ea1p, hay g\u1eedi email th\u00f4ng b\u00e1o cho t\u1eebng ng\u01b0\u1eddi \u0111\u1ec1u c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c t\u1ef1 \u0111\u1ed9ng h\u00f3a ho\u00e0n to\u00e0n. Theo m\u1ed9t ph\u00e2n t\u00edch c\u1ee7a McKinsey, t\u1ef1 \u0111\u1ed9ng h\u00f3a c\u00f3 th\u1ec3 gi\u00fap nh\u00e2n vi\u00ean v\u0103n ph\u00f2ng ti\u1ebft ki\u1ec7m \u0111\u1ebfn 20-30% th\u1eddi gian l\u00e0m vi\u1ec7c cho c\u00e1c t\u00e1c v\u1ee5 l\u1eb7p l\u1ea1i.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Giam-thieu-sai-sot-con-nguoi\"><\/span>Gi\u1ea3m thi\u1ec3u sai s\u00f3t con ng\u01b0\u1eddi<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>M\u00e1y m\u00f3c ho\u1ea1t \u0111\u1ed9ng d\u1ef1a tr\u00ean c\u00e1c quy t\u1eafc \u0111\u01b0\u1ee3c l\u1eadp tr\u00ecnh s\u1eb5n v\u00e0 kh\u00f4ng b\u1ecb \u1ea3nh h\u01b0\u1edfng b\u1edfi s\u1ef1 m\u1ec7t m\u1ecfi hay m\u1ea5t t\u1eadp trung. Vi\u1ec7c t\u1ef1 \u0111\u1ed9ng h\u00f3a c\u00e1c quy tr\u00ecnh nh\u1eadp li\u1ec7u v\u00e0 t\u00ednh to\u00e1n b\u1eb1ng VBA \u0111\u1ea3m b\u1ea3o d\u1eef li\u1ec7u lu\u00f4n \u0111\u01b0\u1ee3c x\u1eed l\u00fd v\u1edbi \u0111\u1ed9 ch\u00ednh x\u00e1c 100%, gi\u1ea3m thi\u1ec3u c\u00e1c r\u1ee7i ro t\u00e0i ch\u00ednh ho\u1eb7c v\u1eadn h\u00e0nh do sai s\u00f3t.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Tao-ung-dung-quan-ly-chuyen-nghiep\"><\/span>T\u1ea1o \u1ee9ng d\u1ee5ng qu\u1ea3n l\u00fd chuy\u00ean nghi\u1ec7p<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>V\u1edbi VBA, b\u1ea1n c\u00f3 th\u1ec3 x\u00e2y d\u1ef1ng c\u00e1c giao di\u1ec7n (Form) th\u00f4ng minh, c\u00f3 c\u00e1c n\u00fat \u0111i\u1ec1u h\u01b0\u1edbng, c\u00e1c quy t\u1eafc x\u00e1c th\u1ef1c d\u1eef li\u1ec7u ch\u1eb7t ch\u1ebd v\u00e0 c\u00e1c b\u00e1o c\u00e1o (Report) \u0111\u1ed9ng theo y\u00eau c\u1ea7u ng\u01b0\u1eddi d\u00f9ng. \u0110i\u1ec1u n\u00e0y gi\u00fap bi\u1ebfn c\u01a1 s\u1edf d\u1eef li\u1ec7u Access c\u1ee7a b\u1ea1n th\u00e0nh m\u1ed9t \u1ee9ng d\u1ee5ng qu\u1ea3n l\u00fd chuy\u00ean nghi\u1ec7p, th\u00e2n thi\u1ec7n v\u1edbi ng\u01b0\u1eddi d\u00f9ng cu\u1ed1i.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Cach-bat-dau-viet-VBA-trong-Access\"><\/span>C\u00e1ch b\u1eaft \u0111\u1ea7u vi\u1ebft VBA trong Access<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0110\u1ec3 b\u1eaft \u0111\u1ea7u vi\u1ebft nh\u1eefng d\u00f2ng code \u0111\u1ea7u ti\u00ean, b\u1ea1n c\u1ea7n l\u00e0m quen v\u1edbi c\u1eeda s\u1ed5 so\u1ea1n th\u1ea3o VBA. C\u1eeda s\u1ed5 n\u00e0y \u0111\u01b0\u1ee3c g\u1ecdi l\u00e0 Visual Basic Editor (VBE). C\u00e1c b\u01b0\u1edbc d\u01b0\u1edbi \u0111\u00e2y s\u1ebd h\u01b0\u1edbng d\u1eabn b\u1ea1n c\u00e1ch truy c\u1eadp v\u00e0 t\u1ea1o m\u1ed9t ch\u01b0\u01a1ng tr\u00ecnh \u0111\u01a1n gi\u1ea3n nh\u1ea5t.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2025\/06\/lap-trinh-vba-trong-access-02.jpg\" alt=\"L\u1eadp tr\u00ecnh VBA trong Access\" width=\"600\" height=\"400\" class=\"aligncenter size-full wp-image-30687\" title=\"\" srcset=\"https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2025\/06\/lap-trinh-vba-trong-access-02.jpg 600w, https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2025\/06\/lap-trinh-vba-trong-access-02-300x200.jpg 300w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/p>\n<h3><span class=\"ez-toc-section\" id=\"Mo-cua-so-Visual-Basic-Editor-VBE\"><\/span>M\u1edf c\u1eeda s\u1ed5 Visual Basic Editor (VBE)<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>C\u00e1ch nhanh nh\u1ea5t \u0111\u1ec3 m\u1edf VBE l\u00e0 s\u1eed d\u1ee5ng ph\u00edm t\u1eaft <strong>Alt + F11<\/strong>. Ho\u1eb7c b\u1ea1n c\u00f3 th\u1ec3 v\u00e0o tab <strong>Database Tools<\/strong> tr\u00ean thanh ribbon v\u00e0 nh\u1ea5n v\u00e0o bi\u1ec3u t\u01b0\u1ee3ng <strong>Visual Basic<\/strong>. C\u1eeda s\u1ed5 VBE s\u1ebd hi\u1ec7n ra, \u0111\u00e2y l\u00e0 n\u01a1i b\u1ea1n s\u1ebd l\u00e0m vi\u1ec7c v\u1edbi to\u00e0n b\u1ed9 <a href=\"https:\/\/interdata.vn\/blog\/source-code-la-gi\/\">m\u00e3 ngu\u1ed3n<\/a> c\u1ee7a m\u00ecnh.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Chen-mot-Module-moi\"><\/span>Ch\u00e8n m\u1ed9t Module m\u1edbi<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Module l\u00e0 n\u01a1i ch\u1ee9a c\u00e1c \u0111o\u1ea1n code c\u1ee7a b\u1ea1n. Trong c\u1eeda s\u1ed5 VBE, b\u1ea1n v\u00e0o menu <strong>Insert<\/strong> v\u00e0 ch\u1ecdn <strong>Module<\/strong>. M\u1ed9t c\u1eeda s\u1ed5 so\u1ea1n th\u1ea3o tr\u1eafng s\u1ebd xu\u1ea5t hi\u1ec7n b\u00ean tay ph\u1ea3i, s\u1eb5n s\u00e0ng \u0111\u1ec3 b\u1ea1n vi\u1ebft code. M\u1ed7i file Access c\u00f3 th\u1ec3 ch\u1ee9a nhi\u1ec1u Module kh\u00e1c nhau \u0111\u1ec3 qu\u1ea3n l\u00fd code m\u1ed9t c\u00e1ch khoa h\u1ecdc.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Viet-thu-tuc-Sub-%E2%80%9CHello-World%E2%80%9D-dau-tien\"><\/span>Vi\u1ebft th\u1ee7 t\u1ee5c Sub &#8220;Hello World&#8221; \u0111\u1ea7u ti\u00ean<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Th\u1ee7 t\u1ee5c (Sub) l\u00e0 m\u1ed9t kh\u1ed1i l\u1ec7nh th\u1ef1c hi\u1ec7n m\u1ed9t c\u00f4ng vi\u1ec7c c\u1ee5 th\u1ec3. H\u00e3y g\u00f5 \u0111o\u1ea1n code sau v\u00e0o c\u1eeda s\u1ed5 Module v\u1eeba t\u1ea1o:<\/p>\n<pre><code class=\"language-plaintext\">Sub loiChaoDauTien()\r\n    MsgBox \"InterData ch\u00e0o b\u1ea1n \u0111\u1ebfn v\u1edbi VBA Access!\"\r\nEnd Sub\r\n```Sub loiChaoDauTien()` l\u00e0 t\u00ean c\u1ee7a th\u1ee7 t\u1ee5c. `MsgBox` l\u00e0 m\u1ed9t h\u00e0m c\u00f3 s\u1eb5n d\u00f9ng \u0111\u1ec3 hi\u1ec3n th\u1ecb h\u1ed9p tho\u1ea1i th\u00f4ng b\u00e1o.\r\n\r\n### L\u01b0u v\u00e0 ch\u1ea1y code\r\n\r\nNh\u1ea5n **Ctrl + S** \u0111\u1ec3 l\u01b0u l\u1ea1i Module. \u0110\u1ec3 ch\u1ea1y th\u1eed, b\u1ea1n \u0111\u1eb7t con tr\u1ecf chu\u1ed9t v\u00e0o trong ph\u1ea1m vi c\u1ee7a th\u1ee7 t\u1ee5c `loiChaoDauTien` v\u00e0 nh\u1ea5n ph\u00edm **F5** ho\u1eb7c n\u00fat Run (h\u00ecnh tam gi\u00e1c m\u00e0u xanh) tr\u00ean thanh c\u00f4ng c\u1ee5. M\u1ed9t h\u1ed9p tho\u1ea1i v\u1edbi d\u00f2ng ch\u1eef \"InterData ch\u00e0o b\u1ea1n \u0111\u1ebfn v\u1edbi VBA Access!\" s\u1ebd hi\u1ec7n ra.\r\n\r\n## C\u00e1c kh\u00e1i ni\u1ec7m c\u01a1 b\u1ea3n c\u1ea7n n\u1eafm\r\n\r\n\u0110\u1ec3 vi\u1ebft \u0111\u01b0\u1ee3c nh\u1eefng \u0111o\u1ea1n code ph\u1ee9c t\u1ea1p h\u01a1n, b\u1ea1n c\u1ea7n n\u1eafm v\u1eefng c\u00e1c th\u00e0nh ph\u1ea7n n\u1ec1n t\u1ea3ng c\u1ee7a ng\u00f4n ng\u1eef VBA. \u0110\u00e2y l\u00e0 nh\u1eefng vi\u00ean g\u1ea1ch c\u01a1 b\u1ea3n x\u00e2y d\u1ef1ng n\u00ean m\u1ecdi \u1ee9ng d\u1ee5ng. Vi\u1ec7c hi\u1ec3u r\u00f5 ch\u00fang gi\u00fap b\u1ea1n \u0111\u1ecdc code c\u1ee7a ng\u01b0\u1eddi kh\u00e1c v\u00e0 t\u1ef1 m\u00ecnh gi\u1ea3i quy\u1ebft v\u1ea5n \u0111\u1ec1.\r\n\r\n* **Bi\u1ebfn v\u00e0 Ki\u1ec3u d\u1eef li\u1ec7u:** Bi\u1ebfn (Variable) l\u00e0 t\u00ean g\u1ecdi c\u1ee7a m\u1ed9t v\u00f9ng nh\u1edb d\u00f9ng \u0111\u1ec3 l\u01b0u tr\u1eef d\u1eef li\u1ec7u (v\u0103n b\u1ea3n, s\u1ed1, ng\u00e0y th\u00e1ng...). M\u1ed7i bi\u1ebfn c\u00f3 m\u1ed9t ki\u1ec3u d\u1eef li\u1ec7u (Data Type) t\u01b0\u01a1ng \u1ee9ng nh\u01b0 `String` cho v\u0103n b\u1ea3n, `Integer` cho s\u1ed1 nguy\u00ean, `Double` cho s\u1ed1 th\u1ef1c.\r\n* **Th\u1ee7 t\u1ee5c (Sub) v\u00e0 H\u00e0m (Function):** Sub l\u00e0 m\u1ed9t kh\u1ed1i l\u1ec7nh th\u1ef1c hi\u1ec7n m\u1ed9t h\u00e0nh \u0111\u1ed9ng. Function c\u0169ng l\u00e0 m\u1ed9t kh\u1ed1i l\u1ec7nh nh\u01b0ng n\u00f3 s\u1ebd tr\u1ea3 v\u1ec1 m\u1ed9t gi\u00e1 tr\u1ecb sau khi th\u1ef1c hi\u1ec7n xong. V\u00ed d\u1ee5, m\u1ed9t Sub c\u00f3 th\u1ec3 l\u01b0u d\u1eef li\u1ec7u, c\u00f2n m\u1ed9t Function c\u00f3 th\u1ec3 t\u00ednh t\u1ed5ng ti\u1ec1n.\r\n* **V\u00f2ng l\u1eb7p (For...Next, Do...Loop):** V\u00f2ng l\u1eb7p cho ph\u00e9p b\u1ea1n th\u1ef1c hi\u1ec7n l\u1eb7p \u0111i l\u1eb7p l\u1ea1i m\u1ed9t kh\u1ed1i l\u1ec7nh nhi\u1ec1u l\u1ea7n. V\u00ed d\u1ee5, b\u1ea1n c\u00f3 th\u1ec3 d\u00f9ng v\u00f2ng l\u1eb7p \u0111\u1ec3 duy\u1ec7t qua 1000 d\u00f2ng d\u1eef li\u1ec7u trong m\u1ed9t b\u1ea3ng \u0111\u1ec3 ki\u1ec3m tra th\u00f4ng tin.\r\n* **C\u00e2u l\u1ec7nh \u0111i\u1ec1u ki\u1ec7n (If...Then...Else):** C\u00e2u l\u1ec7nh n\u00e0y cho ph\u00e9p ch\u01b0\u01a1ng tr\u00ecnh r\u1ebd nh\u00e1nh d\u1ef1a tr\u00ean m\u1ed9t \u0111i\u1ec1u ki\u1ec7n \u0111\u00fang ho\u1eb7c sai. V\u00ed d\u1ee5: **N\u1ebfu** \u0111i\u1ec3m s\u1ed1 l\u1edbn h\u01a1n 5 **th\u00ec** k\u1ebft qu\u1ea3 l\u00e0 \"\u0110\u1eadu\", **ng\u01b0\u1ee3c l\u1ea1i** k\u1ebft qu\u1ea3 l\u00e0 \"R\u1edbt\".\r\n* **\u0110\u1ed1i t\u01b0\u1ee3ng, Thu\u1ed9c t\u00ednh, Ph\u01b0\u01a1ng th\u1ee9c:** \u0110\u00e2y l\u00e0 kh\u00e1i ni\u1ec7m quan tr\u1ecdng nh\u1ea5t. Access \u0111\u01b0\u1ee3c c\u1ea5u th\u00e0nh t\u1eeb c\u00e1c \u0111\u1ed1i t\u01b0\u1ee3ng (Objects) nh\u01b0 `Form`, `Report`, `TextBox`. M\u1ed7i \u0111\u1ed1i t\u01b0\u1ee3ng c\u00f3 c\u00e1c thu\u1ed9c t\u00ednh (Properties) nh\u01b0 `M\u00e0u s\u1eafc`, `K\u00edch th\u01b0\u1edbc` v\u00e0 c\u00e1c ph\u01b0\u01a1ng th\u1ee9c (Methods) l\u00e0 h\u00e0nh \u0111\u1ed9ng nh\u01b0 `M\u1edf`, `\u0110\u00f3ng`, `L\u00e0m m\u1edbi`.\r\n\r\n## Th\u1ef1c h\u00e0nh: T\u1ea1o form nh\u1eadp li\u1ec7u b\u1eb1ng VBA\r\n\r\nL\u00fd thuy\u1ebft s\u1ebd d\u1ec5 hi\u1ec3u h\u01a1n khi \u0111i \u0111\u00f4i v\u1edbi th\u1ef1c h\u00e0nh. Ch\u00fang ta s\u1ebd c\u00f9ng nhau t\u1ea1o m\u1ed9t Form nh\u1eadp li\u1ec7u th\u00f4ng tin nh\u00e2n vi\u00ean \u0111\u01a1n gi\u1ea3n, s\u1eed d\u1ee5ng VBA \u0111\u1ec3 x\u1eed l\u00fd vi\u1ec7c l\u01b0u d\u1eef li\u1ec7u v\u00e0o b\u1ea3ng.\r\n\r\n### B\u01b0\u1edbc 1: Thi\u1ebft k\u1ebf giao di\u1ec7n Form\r\n\r\n\u0110\u1ea7u ti\u00ean, h\u00e3y t\u1ea1o m\u1ed9t b\u1ea3ng t\u00ean l\u00e0 `tblNhanVien` v\u1edbi c\u00e1c tr\u01b0\u1eddng: `ID` (AutoNumber, Primary Key), `HoTen` (Short Text), `NgaySinh` (Date\/Time), `ChucVu` (Short Text). Sau \u0111\u00f3, t\u1ea1o m\u1ed9t Form m\u1edbi d\u1ef1a tr\u00ean b\u1ea3ng n\u00e0y v\u00e0 k\u00e9o c\u00e1c tr\u01b0\u1eddng v\u00e0o Form. Th\u00eam m\u1ed9t n\u00fat b\u1ea5m (Button) v\u00e0 \u0111\u1eb7t t\u00ean l\u00e0 `cmdLuu`.\r\n\r\n[H\u00ecnh \u1ea3nh giao di\u1ec7n Form nh\u1eadp li\u1ec7u nh\u00e2n vi\u00ean]\r\n\r\n### B\u01b0\u1edbc 2: G\u00e1n t\u00ean cho c\u00e1c Controls\r\n\r\n\u0110\u1ec3 VBA c\u00f3 th\u1ec3 nh\u1eadn di\u1ec7n v\u00e0 l\u00e0m vi\u1ec7c, b\u1ea1n c\u1ea7n \u0111\u1eb7t t\u00ean cho c\u00e1c \u00f4 nh\u1eadp li\u1ec7u (TextBox) v\u00e0 n\u00fat b\u1ea5m (Button). Ch\u1ecdn t\u1eebng control, v\u00e0o c\u1eeda s\u1ed5 thu\u1ed9c t\u00ednh (Property Sheet), \u1edf tab **Other**, \u0111\u1eb7t thu\u1ed9c t\u00ednh **Name** l\u1ea7n l\u01b0\u1ee3t l\u00e0 `txtHoTen`, `txtNgaySinh`, `txtChucVu` v\u00e0 `cmdLuu`.\r\n\r\n### B\u01b0\u1edbc 3: Vi\u1ebft code VBA cho n\u00fat \"L\u01b0u D\u1eef Li\u1ec7u\"\r\n\r\nNh\u1ea5p chu\u1ed9t ph\u1ea3i v\u00e0o n\u00fat `cmdLuu`, ch\u1ecdn **Build Event**, sau \u0111\u00f3 ch\u1ecdn **Code Builder**. C\u1eeda s\u1ed5 VBE s\u1ebd m\u1edf ra v\u00e0 t\u1ef1 \u0111\u1ed9ng t\u1ea1o m\u1ed9t khung s\u01b0\u1eddn s\u1ef1 ki\u1ec7n `OnClick` cho n\u00fat b\u1ea5m. B\u1ea1n h\u00e3y \u0111i\u1ec1n \u0111o\u1ea1n code sau v\u00e0o gi\u1eefa `Private Sub cmdLuu_Click()` v\u00e0 `End Sub`:\r\n\r\n```vb\r\nPrivate Sub cmdLuu_Click()\r\n    'Ki\u1ec3m tra xem \u0111\u00e2y l\u00e0 b\u1ea3n ghi m\u1edbi hay b\u1ea3n ghi c\u0169\r\n    If Me.NewRecord Then\r\n        'N\u1ebfu l\u00e0 b\u1ea3n ghi m\u1edbi, di chuy\u1ec3n \u0111\u1ebfn b\u1ea3n ghi \u0111\u00f3\r\n        DoCmd.GoToRecord , , acNewRec\r\n    End If\r\n\r\n    'G\u00e1n gi\u00e1 tr\u1ecb t\u1eeb Form v\u00e0o c\u00e1c tr\u01b0\u1eddng c\u1ee7a b\u1ea3ng\r\n    Me.HoTen = Me.txtHoTen\r\n    Me.NgaySinh = Me.txtNgaySinh\r\n    Me.ChucVu = Me.txtChucVu\r\n    \r\n    'Th\u00f4ng b\u00e1o l\u01b0u th\u00e0nh c\u00f4ng\r\n    MsgBox \"\u0110\u00e3 l\u01b0u th\u00f4ng tin nh\u00e2n vi\u00ean th\u00e0nh c\u00f4ng!\", vbInformation, \"InterData\"\r\nEnd Sub<\/code><\/pre>\n<h3><span class=\"ez-toc-section\" id=\"Buoc-4-Them-code-kiem-tra-du-lieu-Validation\"><\/span>B\u01b0\u1edbc 4: Th\u00eam code ki\u1ec3m tra d\u1eef li\u1ec7u (Validation)<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u0110\u1ec3 \u0111\u1ea3m b\u1ea3o ng\u01b0\u1eddi d\u00f9ng kh\u00f4ng \u0111\u1ec3 tr\u1ed1ng h\u1ecd t\u00ean, b\u1ea1n c\u00f3 th\u1ec3 th\u00eam \u0111o\u1ea1n code ki\u1ec3m tra tr\u01b0\u1edbc khi l\u01b0u. \u0110o\u1ea1n code ho\u00e0n ch\u1ec9nh cho n\u00fat b\u1ea5m s\u1ebd nh\u01b0 sau:<\/p>\n<pre><code class=\"language-plaintext\">Private Sub cmdLuu_Click()\r\n    'Ki\u1ec3m tra xem h\u1ecd t\u00ean c\u00f3 b\u1ecb b\u1ecf tr\u1ed1ng kh\u00f4ng\r\n    If IsNull(Me.txtHoTen) Or Me.txtHoTen = \"\" Then\r\n        MsgBox \"Vui l\u00f2ng kh\u00f4ng \u0111\u1ec3 tr\u1ed1ng H\u1ecd T\u00ean!\", vbExclamation, \"L\u1ed7i\"\r\n        Me.txtHoTen.SetFocus 'Di chuy\u1ec3n con tr\u1ecf v\u1ec1 \u00f4 H\u1ecd T\u00ean\r\n        Exit Sub 'Tho\u00e1t kh\u1ecfi th\u1ee7 t\u1ee5c, kh\u00f4ng l\u00e0m g\u00ec th\u00eam\r\n    End If\r\n    \r\n    If Me.NewRecord Then\r\n        DoCmd.GoToRecord , , acNewRec\r\n    End If\r\n\r\n    Me.HoTen = Me.txtHoTen\r\n    Me.NgaySinh = Me.txtNgaySinh\r\n    Me.ChucVu = Me.txtChucVu\r\n    \r\n    MsgBox \"\u0110\u00e3 l\u01b0u th\u00f4ng tin nh\u00e2n vi\u00ean th\u00e0nh c\u00f4ng!\", vbInformation, \"InterData\"\r\nEnd Sub<\/code><\/pre>\n<h2><span class=\"ez-toc-section\" id=\"Nhung-doan-code-VBA-mau-huu-ich\"><\/span>Nh\u1eefng \u0111o\u1ea1n code VBA m\u1eabu h\u1eefu \u00edch<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>D\u01b0\u1edbi \u0111\u00e2y l\u00e0 m\u1ed9t v\u00e0i \u0111o\u1ea1n code th\u00f4ng d\u1ee5ng m\u00e0 b\u1ea1n c\u00f3 th\u1ec3 \u00e1p d\u1ee5ng ngay v\u00e0o c\u00f4ng vi\u1ec7c c\u1ee7a m\u00ecnh. C\u00e1c v\u00ed d\u1ee5 n\u00e0y gi\u1ea3i quy\u1ebft nh\u1eefng b\u00e0i to\u00e1n r\u1ea5t ph\u1ed5 bi\u1ebfn trong qu\u1ea3n l\u00fd d\u1eef li\u1ec7u b\u1eb1ng Access.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2025\/06\/lap-trinh-vba-trong-access-03.jpg\" alt=\"L\u1eadp tr\u00ecnh VBA trong Access\" width=\"600\" height=\"400\" class=\"aligncenter size-full wp-image-30688\" title=\"\" srcset=\"https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2025\/06\/lap-trinh-vba-trong-access-03.jpg 600w, https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2025\/06\/lap-trinh-vba-trong-access-03-300x200.jpg 300w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/p>\n<h3><span class=\"ez-toc-section\" id=\"Code-mo-mot-FormReport-theo-dieu-kien\"><\/span>Code m\u1edf m\u1ed9t Form\/Report theo \u0111i\u1ec1u ki\u1ec7n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<pre><code class=\"language-plaintext\">'M\u1edf Form \"frmChiTietDonHang\" v\u00e0 ch\u1ec9 hi\u1ec3n th\u1ecb c\u00e1c \u0111\u01a1n h\u00e0ng c\u1ee7a kh\u00e1ch h\u00e0ng \"KH001\"\r\nDoCmd.OpenForm \"frmChiTietDonHang\", , , \"MaKhachHang = 'KH001'\"\r\n\r\n'M\u1edf Report \"rptDoanhThuThang\" v\u00e0 ch\u1ec9 hi\u1ec3n th\u1ecb doanh thu c\u1ee7a th\u00e1ng 5\/2025\r\nDoCmd.OpenReport \"rptDoanhThuThang\", acViewPreview, , \"Month(NgayBan) = 5 And Year(NgayBan) = 2025\"<\/code><\/pre>\n<h3><span class=\"ez-toc-section\" id=\"Code-tim-kiem-du-lieu-tren-Form\"><\/span>Code t\u00ecm ki\u1ebfm d\u1eef li\u1ec7u tr\u00ean Form<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<pre><code class=\"language-plaintext\">'Gi\u1ea3 s\u1eed b\u1ea1n c\u00f3 m\u1ed9t TextBox t\u00ean l\u00e0 txtTimKiem v\u00e0 m\u1ed9t n\u00fat b\u1ea5m cmdTimKiem\r\nPrivate Sub cmdTimKiem_Click()\r\n    Me.Filter = \"HoTen LIKE '*\" &amp; Me.txtTimKiem &amp; \"*'\"\r\n    Me.FilterOn = True\r\nEnd Sub\r\n\r\n<\/code><\/pre>\n<h3><span class=\"ez-toc-section\" id=\"Code-xuat-du-lieu-ra-Excel\"><\/span>Code xu\u1ea5t d\u1eef li\u1ec7u ra Excel<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<pre><code class=\"language-plaintext\">'Xu\u1ea5t d\u1eef li\u1ec7u t\u1eeb m\u1ed9t Query t\u00ean l\u00e0 \"qryDoanhThu\" ra m\u1ed9t file Excel m\u1edbi\r\nDoCmd.OutputTo acOutputQuery, \"qryDoanhThu\", acFormatXLSX, \"C:\\BaoCao\\DoanhThu.xlsx\", True<\/code><\/pre>\n<h3><span class=\"ez-toc-section\" id=\"Code-gui-email-tu-dong-tu-Access\"><\/span>Code g\u1eedi email t\u1ef1 \u0111\u1ed9ng t\u1eeb Access<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<pre><code class=\"language-plaintext\">'G\u1eedi m\u1ed9t email \u0111\u01a1n gi\u1ea3n b\u1eb1ng Outlook\r\nDoCmd.SendObject acSendNoObject, , , \"nguoinhan@email.com\", , , \"Ti\u00eau \u0111\u1ec1 Email\", \"\u0110\u00e2y l\u00e0 n\u1ed9i dung email.\", False<\/code><\/pre>\n<h2><span class=\"ez-toc-section\" id=\"Nhung-loi-thuong-gap-va-cach-xu-ly\"><\/span>Nh\u1eefng l\u1ed7i th\u01b0\u1eddng g\u1eb7p v\u00e0 c\u00e1ch x\u1eed l\u00fd<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Khi m\u1edbi b\u1eaft \u0111\u1ea7u, vi\u1ec7c g\u1eb7p l\u1ed7i l\u00e0 kh\u00f4ng th\u1ec3 tr\u00e1nh kh\u1ecfi. Hi\u1ec3u r\u00f5 c\u00e1c lo\u1ea1i l\u1ed7i ph\u1ed5 bi\u1ebfn v\u00e0 bi\u1ebft c\u00e1ch s\u1eed d\u1ee5ng c\u00f4ng c\u1ee5 g\u1ee1 l\u1ed7i (<a href=\"https:\/\/interdata.vn\/blog\/wordpress-debug-la-gi\/\">debug<\/a>) s\u1ebd gi\u00fap b\u1ea1n ti\u1ebft ki\u1ec7m r\u1ea5t nhi\u1ec1u th\u1eddi gian v\u00e0 c\u00f4ng s\u1ee9c.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2025\/06\/lap-trinh-vba-trong-access-04.jpg\" alt=\"L\u1eadp tr\u00ecnh VBA trong Access\" width=\"600\" height=\"400\" class=\"aligncenter size-full wp-image-30689\" title=\"\" srcset=\"https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2025\/06\/lap-trinh-vba-trong-access-04.jpg 600w, https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2025\/06\/lap-trinh-vba-trong-access-04-300x200.jpg 300w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/p>\n<h3><span class=\"ez-toc-section\" id=\"Loi-cu-phap-Compile-Error\"><\/span>L\u1ed7i c\u00fa ph\u00e1p (Compile Error)<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u0110\u00e2y l\u00e0 l\u1ed7i d\u1ec5 ph\u00e1t hi\u1ec7n nh\u1ea5t, th\u01b0\u1eddng do g\u00f5 sai t\u00ean bi\u1ebfn, t\u00ean h\u00e0m, ho\u1eb7c thi\u1ebfu m\u1ed9t d\u1ea5u ngo\u1eb7c. VBE s\u1ebd b\u00e1o \u0111\u1ecf d\u00f2ng b\u1ecb l\u1ed7i v\u00e0 kh\u00f4ng cho ph\u00e9p b\u1ea1n ch\u1ea1y ch\u01b0\u01a1ng tr\u00ecnh. C\u00e1ch x\u1eed l\u00fd l\u00e0 \u0111\u1ecdc k\u1ef9 th\u00f4ng b\u00e1o l\u1ed7i v\u00e0 s\u1eeda l\u1ea1i cho \u0111\u00fang c\u00fa ph\u00e1p.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Loi-khi-chay-Runtime-Error\"><\/span>L\u1ed7i khi ch\u1ea1y (Runtime Error)<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>L\u1ed7i n\u00e0y x\u1ea3y ra khi ch\u01b0\u01a1ng tr\u00ecnh \u0111ang ch\u1ea1y, v\u00ed d\u1ee5 nh\u01b0 chia m\u1ed9t s\u1ed1 cho 0, ho\u1eb7c c\u1ed1 g\u1eafng truy c\u1eadp m\u1ed9t file kh\u00f4ng t\u1ed3n t\u1ea1i. Access s\u1ebd d\u1eebng ch\u01b0\u01a1ng tr\u00ecnh v\u00e0 hi\u1ec3n th\u1ecb m\u1ed9t h\u1ed9p tho\u1ea1i b\u00e1o l\u1ed7i k\u00e8m theo m\u1ed9t m\u00e3 l\u1ed7i (v\u00ed d\u1ee5: Runtime Error &#8217;91&#8217;). B\u1ea1n c\u1ea7n b\u1ea5m n\u00fat <strong>Debug<\/strong> \u0111\u1ec3 xem VBE ch\u1ec9 ra d\u00f2ng code n\u00e0o g\u00e2y l\u1ed7i v\u00e0 ph\u00e2n t\u00edch nguy\u00ean nh\u00e2n.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Meo-su-dung-cua-so-Debug\"><\/span>M\u1eb9o s\u1eed d\u1ee5ng c\u1eeda s\u1ed5 Debug<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>VBE cung c\u1ea5p c\u00e1c c\u00f4ng c\u1ee5 g\u1ee1 l\u1ed7i m\u1ea1nh m\u1ebd. H\u00e3y d\u00f9ng ph\u00edm <strong>F8<\/strong> \u0111\u1ec3 ch\u1ea1y t\u1eebng d\u00f2ng l\u1ec7nh m\u1ed9t. S\u1eed d\u1ee5ng c\u1eeda s\u1ed5 <strong>Immediate Window<\/strong> (Ctrl + G) \u0111\u1ec3 in ra gi\u00e1 tr\u1ecb c\u1ee7a bi\u1ebfn t\u1ea1i m\u1ed9t th\u1eddi \u0111i\u1ec3m b\u1ea5t k\u1ef3, v\u00e0 c\u1eeda s\u1ed5 <strong>Locals Window<\/strong> \u0111\u1ec3 theo d\u00f5i gi\u00e1 tr\u1ecb c\u1ee7a t\u1ea5t c\u1ea3 c\u00e1c bi\u1ebfn \u0111ang ho\u1ea1t \u0111\u1ed9ng.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Tai-nguyen-hoc-VBA-Access-hieu-qua\"><\/span>T\u00e0i nguy\u00ean h\u1ecdc VBA Access hi\u1ec7u qu\u1ea3<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>H\u1ecdc l\u1eadp tr\u00ecnh l\u00e0 m\u1ed9t h\u00e0nh tr\u00ecnh d\u00e0i. Vi\u1ec7c t\u1eadn d\u1ee5ng c\u00e1c ngu\u1ed3n t\u00e0i nguy\u00ean ch\u1ea5t l\u01b0\u1ee3ng s\u1ebd gi\u00fap b\u1ea1n ti\u1ebfn b\u1ed9 nhanh h\u01a1n v\u00e0 gi\u1ea3i quy\u1ebft c\u00e1c v\u1ea5n \u0111\u1ec1 ph\u1ee9c t\u1ea1p.<\/p>\n<ul>\n<li><strong>S\u00e1ch v\u00e0 Ebook n\u00ean \u0111\u1ecdc:<\/strong> &#8220;Access 2019 Bible&#8221; c\u1ee7a Michael Alexander v\u00e0 Richard Kusleika, &#8220;VBA for Dummies&#8221; c\u1ee7a John Paul Mueller. \u0110\u00e2y l\u00e0 nh\u1eefng cu\u1ed1n s\u00e1ch kinh \u0111i\u1ec3n cung c\u1ea5p ki\u1ebfn th\u1ee9c t\u1eeb c\u01a1 b\u1ea3n \u0111\u1ebfn n\u00e2ng cao m\u1ed9t c\u00e1ch h\u1ec7 th\u1ed1ng.<\/li>\n<li><strong>K\u00eanh YouTube h\u01b0\u1edbng d\u1eabn tr\u1ef1c quan:<\/strong> C\u00e1c k\u00eanh nh\u01b0 &#8220;Access All In One&#8221;, &#8220;Learn iT Training&#8221; c\u00f3 r\u1ea5t nhi\u1ec1u video tutorial ch\u1ea5t l\u01b0\u1ee3ng, h\u01b0\u1edbng d\u1eabn t\u1eebng b\u01b0\u1edbc th\u1ef1c hi\u1ec7n c\u00e1c d\u1ef1 \u00e1n th\u1ef1c t\u1ebf.<\/li>\n<li><strong><a href=\"https:\/\/interdata.vn\/blog\/website-la-gi\/\">Website<\/a> v\u00e0 Di\u1ec5n \u0111\u00e0n c\u1ed9ng \u0111\u1ed3ng:<\/strong> Stack Overflow l\u00e0 n\u01a1i b\u1ea1n c\u00f3 th\u1ec3 \u0111\u1eb7t c\u00e2u h\u1ecfi v\u00e0 nh\u1eadn \u0111\u01b0\u1ee3c c\u00e2u tr\u1ea3 l\u1eddi t\u1eeb c\u00e1c chuy\u00ean gia tr\u00ean to\u00e0n th\u1ebf gi\u1edbi. T\u1ea1i Vi\u1ec7t Nam, di\u1ec5n \u0111\u00e0n GiaiPhapExcel.com c\u00f3 m\u1ed9t m\u1ee5c ri\u00eang v\u1ec1 Access v\u1edbi c\u1ed9ng \u0111\u1ed3ng r\u1ea5t nhi\u1ec7t t\u00ecnh v\u00e0 gi\u00e0u kinh nghi\u1ec7m.<\/li>\n<\/ul>\n<h2><span class=\"ez-toc-section\" id=\"Ket-luan\"><\/span>K\u1ebft lu\u1eadn<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Vi\u1ec7c trang b\u1ecb k\u1ef9 n\u0103ng l\u1eadp tr\u00ecnh VBA trong Access kh\u00f4ng ch\u1ec9 l\u00e0 h\u1ecdc m\u1ed9t c\u00f4ng c\u1ee5 m\u1edbi, m\u00e0 l\u00e0 thay \u0111\u1ed5i t\u01b0 duy gi\u1ea3i quy\u1ebft v\u1ea5n \u0111\u1ec1. B\u1ea1n c\u00f3 th\u1ec3 ch\u1ee7 \u0111\u1ed9ng bi\u1ebfn nh\u1eefng quy tr\u00ecnh th\u1ee7 c\u00f4ng t\u1ed1n th\u1eddi gian th\u00e0nh c\u00e1c h\u1ec7 th\u1ed1ng t\u1ef1 \u0111\u1ed9ng h\u00f3a hi\u1ec7u qu\u1ea3. H\u00e3y b\u1eaft \u0111\u1ea7u t\u1eeb nh\u1eefng v\u00ed d\u1ee5 nh\u1ecf trong b\u00e0i vi\u1ebft n\u00e0y, \u00e1p d\u1ee5ng v\u00e0o ch\u00ednh c\u00f4ng vi\u1ec7c c\u1ee7a b\u1ea1n, v\u00e0 b\u1ea1n s\u1ebd th\u1ea5y s\u1ef1 kh\u00e1c bi\u1ec7t r\u00f5 r\u1ec7t.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>B\u1ea1n c\u00f3 \u0111ang d\u00e0nh h\u00e0ng gi\u1edd m\u1ed7i tu\u1ea7n cho c\u00e1c t\u00e1c v\u1ee5 l\u1eb7p \u0111i l\u1eb7p l\u1ea1i trong Microsoft Access? Vi\u1ec7c h\u1ecdc l\u1eadp tr\u00ecnh VBA s\u1ebd gi\u00fap b\u1ea1n t\u1ef1 \u0111\u1ed9ng h\u00f3a g\u1ea7n nh\u01b0 m\u1ecdi quy tr\u00ecnh, t\u1eeb t\u1ea1o b\u00e1o c\u00e1o ph\u1ee9c t\u1ea1p \u0111\u1ebfn qu\u1ea3n l\u00fd d\u1eef li\u1ec7u ch\u1ec9 b\u1eb1ng m\u1ed9t c\u00fa nh\u1ea5p chu\u1ed9t. B\u00e0i vi\u1ebft n\u00e0y<\/p>\n","protected":false},"author":2,"featured_media":30685,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[140],"tags":[],"class_list":["post-30684","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-lap-trinh"],"_links":{"self":[{"href":"https:\/\/interdata.vn\/blog\/wp-json\/wp\/v2\/posts\/30684","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/interdata.vn\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/interdata.vn\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/interdata.vn\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/interdata.vn\/blog\/wp-json\/wp\/v2\/comments?post=30684"}],"version-history":[{"count":3,"href":"https:\/\/interdata.vn\/blog\/wp-json\/wp\/v2\/posts\/30684\/revisions"}],"predecessor-version":[{"id":30693,"href":"https:\/\/interdata.vn\/blog\/wp-json\/wp\/v2\/posts\/30684\/revisions\/30693"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/interdata.vn\/blog\/wp-json\/wp\/v2\/media\/30685"}],"wp:attachment":[{"href":"https:\/\/interdata.vn\/blog\/wp-json\/wp\/v2\/media?parent=30684"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/interdata.vn\/blog\/wp-json\/wp\/v2\/categories?post=30684"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/interdata.vn\/blog\/wp-json\/wp\/v2\/tags?post=30684"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}