HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU BIÊN SOẠN HÀ QUANG DƯƠNG GIÁO TRÌNH HƯỚNG DẪN HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI HỌC Khi nào bạn nên bắt đầu học VBA? Ngay khi bạn nhận thấy mình.
HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU BIÊN SOẠN : HÀ QUANG DƯƠNG GIÁO TRÌNH HƯỚNG DẪN HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI HỌC Khi bạn nên bắt đầu học VBA? Hà Quang Dương - 01693500562 HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU Ngay bạn nhận thấy phải thao tác thủ công nhiều excel Excel cung cấp nhiều công cụ hỗ trợ đắc lực cho việc thao tác làm việc bảng tính Tuy nhiên, nhu cầu quản lý đặc thù lĩnh vực mà người làm excel phải thực nhiều thao tác thủ công, lặp lặp lại gây thời gian nhàm chán công việc Đó lúc bạn cần phải tìm hiểu để học VBA “ Mọi việc phải thứ đơn giản, sau lần thực hành, trải nghiệm, suy nghĩ trình độ bạn nâng dần theo thời gian ” Thái Nguyên , 28-06-2016 Hà Quang Dương - 01693500562 HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU LỜI NÓI ĐẦU Chào mừng bạn đến với chương trình học VBA Excel dành cho người bắt đầu Các bạn làm quen, học thực hành lập trình VBA Excel để giải yêu cầu công việc VBA ? VBA cụm từ viết tắt của: Visual Basic for Applications phần bổ sung Microsoft’s Visual Basic, xây dựng tất ứng dụng Microsoft Office (bao gồm phiên cho hệ điều hành Mac OS) Nó thay mở rộng khả ngôn ngữ macro đặc trưng WordBasic Word, sử dụng để điều khiển hầu hết tất khía cạnh ứng dụng chủ, kể vận dụng nét riêng biệt giao diện người dùng menu toolbar làm việc với hình thái hộp thoại tùy ý VBA Excel tức bạn sử dụng VBA ứng dụng chủ Excel (là phần văn phòng Microsoft Office) Việc tận dụng sức mạnh VBA nhiều chuyên gia viết thành sách chủ yếu tiếng Anh, điều khiến phận không nhỏ người Việt gặp khó khăn tiếp cận làm quen với ngơn ngữ Những u cầu Để học VBA Excel, đương nhiên bạn phải nắm kiến thức excel, bạn chưa sử dụng excel hay học qua khơng nhớ tham khảo: Khóa huấn luyện Excel Bạn sử dụng phiên excel 2003, 2007, 2010 2013 để học VBA Tuy nhiên, dựa kinh nghiệm khuyên bạn nên bắt đầu học với Excel 2010 (Trong tất hướng dẫn sau đó, chủ yếu sử dụng Excel 2010 – bạn lưu ý điều này) Một số câu hỏi thường gặp Tơi khơng biết lập trình liệu có học VBA? Có, hướng dẫn này, bạn học bước để viết chương trình cho riêng mà khơng cần phải trải qua trước khóa học lập trình Khi tơi nên bắt đầu học VBA? Hà Quang Dương - 01693500562 HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU Ngay bạn nhận thấy phải thao tác thủ công nhiều excel Excel cung cấp nhiều công cụ hỗ trợ đắc lực cho việc thao tác làm việc bảng tính Tuy nhiên, nhu cầu quản lý đặc thù lĩnh vực mà người làm excel phải thực nhiều thao tác thủ công, lặp lặp lại gây thời gian nhàm chán cơng việc Đó lúc bạn cần phải tìm hiểu để học VBA Hà Quang Dương - 01693500562 HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU PHẦN 1: NHỮNG KIẾN THỨC CĂN BẢN —– Bài 1: Thanh công cụ Developer Excel —– Bài 2: The Excel VBA Editor – Bộ biên dịch code —– Bài 3: Tìm hiểu cách ghi Macro Excel —– Bài 4: Ký hiệu dấu chấm Excel VBA —– Bài 5: Tạo nút bảng tính —– Bài 6: Thuộc tính Offset —– Bài 7: Thuộc tính Resize PHẦN 2: BIẾN LẬP TRÌNH VBA —– Bài 8: Khái niệm biến —– Bài 9: Thực hành biến —– Bài 10: Câu lệnh Option Explicit —– Bài 11: Phép cộng phép trừ —– Bài 12: Phép nhân phép chia —– Bài 13: Những dạng biến khác VBA PHẦN 3: LOGIC CÓ ĐIỀU KIỆN —– Bài 14: Câu lệnh IF —– Bài 15: Else … ElseIf —– Bài 16: Toán tử có điều kiện —– Bài 17: Tốn tử Logic —– Bài 18: Bài thực hành VBA số —– Bài 19: Bài thực hành VBA số Hà Quang Dương - 01693500562 HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU —– Bài 20: Select Case —– Bài 21: Bài thực hành VBA số —– Bài 22: With … End With PHẦN 4: CHUỖI VÀ HÀM CHUỖI —– Bài 23: Chuỗi ký tự Excel VBA —– Bài 24: Hàm đổi chữ hoa, chữ thường —– Bài 25: Về hàm chuỗi: Trim, Len, Space —– Bài 26: Hàm thay —– Bài 27: Về hàm: InStr, InStrRev, StrReverse —– Bài 28: Về hàm Left Right —– Bài 29: Hàm Mid —– Bài 30: Phần tập thực hành PHẦN 5: LẬP TRÌNH VỊNG LẶP —– Bài 31: VỊNG LĂP FOR —– Bài 32: VÒNG LẶP FOR EACH —– Bài 33: Thuộc tính CELLS —– Bài 34: VỊNG LẶP DO Hà Quang Dương - 01693500562 HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU BÀI 01 – THANH CÔNG CỤ DEVELOPER TRONG EXCEL Trước bắt đầu làm đó, cần phải có chuẩn bị để công việc thuận lợi, giả dụ trước chinh phục cô gái cần chuẩn bị ví Thạch Sanh ^ ^ VBA vậy, trước vào học, bạn cần phải làm hiển thị công cụ Developer (Nhà phát triển) Nói cách hình ảnh cơng cụ Developer “ví Thạch Sanh” giúp bạn cưa đổ cô nàng VBA đỏng đảnh Nhưng tin tơi đi, có phục vụ nàng, bạn thực thăng hoa công việc Hãy để ý từ “làm hiển thị” tức mặc định Developer không hiển thị cơng cụ phía Excel Chúng ta làm theo bước sau để hiển thị DÀNH CHO CÁC BẠN ĐANG DÙNG EXCEL 2007 Các bạn click vào biểu tượng Office hình trịn, góc trên, bên phải –> Click Excel Option phía –> Khi bạn thấy hộp thoại Option –> Click vào thẻ Popular bên trái hộp thoại Tại khu vực “Top options for working with Excel” bạn check chọn “Show Developer tab in the Ribbon” xong DÀNH CHO CÁC BẠN ĐANG DÙNG EXCEL 2010 2013 Đối với hai phiên Excel này, bạn làm chung cách sau: Click vào menu File (góc trái, bên trên) –> Click Options –> Từ hộp thoại ra, click tab Customize Ribbon bên trái hộp thoại Từ bên phía phải, bạn nhìn thấy khu vực gọi “Customize the Ribbon“ Dưới mục “Main Tabs” check chọn Developer: Hà Quang Dương - 01693500562 HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU Khi bạn hoàn thành bước trên, Bạn nhìn thấy Developer cơng cụ phía Excel (Hình xuất Excel 2013, bạn sử dụng Excel 2010 2007 thấy tương tự , khơng giống 100% đâu nhé): Với bảng công cụ này, bạn làm thứ cần thiết với VBA viết code, thiết kế… lưu ý rằng: Excel VBA hoạt động chế độ bảo mật “Macro Security” kích hoạt trạng thái enable Hà Quang Dương - 01693500562 HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU BÀI 02- THE EXCEL VBA EDITOR _ BỘ BIÊN DỊCH CODE Ở trước, tìm hiểu cách thức để mở lên “Ví Thạch Sanh” lập trình Excel VBA Đại khái trơng giống hình đây: Trong phần học này, tìm hiểu nút ngồi bên trái: “Visual Basic” xem cơng dụng Nội dung học dài bạn cần có cố gắng định để chinh phục hành trình tự học VBA thành công Từng bước bước 1, Tôi tin vào cố gắng bạn bắt đầu nào: The Excel VBA Editor – Bộ biên dịch code Để lập trình phải có chỗ để viết code, với VBA Excel người ta gọi với cụm từ: “The Excel VBA Editor” tạm dịch “Bộ biên dịch code” Có số cách để mở biên dịch sau: Cách 1: Từ công cụ Developer –> Click nút Visual Basic Cách 2: Sử dụng tổ hợp phím Alt + F11 Với cách bạn mở biên dịch code VBA giống hình Hãy nhớ bàn phím chuột bạn hồn tồn bình thường mà sau bạn thực theo hai cách mà khơng thấy hình có nghĩa Excel bạn bị lược phần VBA –> Khắc phục cách cài lại Office chuẩn theo LINK NÀY Hà Quang Dương - 01693500562 HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU Bạn thấy nào, liệu có câu hỏi đầu bạn kiểu như: Excel cịn chưa thơng lại mọc thằng học được? ^ ^ Hãy bình tĩnh vạn khởi đầu nan Gian nan có nản… Xem nào, có vài thứ cần phải giai thích biên dịch VBA này: Trước tiên, khu vực màu trắng bên trái gọi với tên: Project – VBA Project nơi lưu trữ toàn dự án VBA bạn có file excel mở Mặc định, có số thành phần sau: Sheet1, Sheet2, and Sheet3 (Với Excel 2013 có worksheet mặc định, bạn nhìn thấy Sheet1 mở biên dịch code VBA phiên này) Bạn thấy rằng: Sheet1, sheet2, Sheet3 đại diện cho tính thời file excel click vào bạn thấy vùng bạn viết code cho sheet đó, thứ : ThisWorkbook gì? Nó nơi lưu trữ dự án VBA bạn áp dụng cho Workbook tức toàn file excel đơn sheet Chú ý: Hãy thử nghịch bạn thích, tắt muốn bật lên sử dụng tổ hợp phím Ctrl + R Một đối tượng khác không liệt kê danh sách Macro – nghe nguy hiểm Chúng ta tìm hiểu kĩ Macro 3, bạn cần hiểu có Macro file excel liệt kê VBA Project Vùng màu xám lớn nơi bạn viết dịng code bạn Nó có màu xám chưa có cửa số viết code mở Để mở cửa sổ này, hình hiển thị biên dịch code bạn bấm đúp vào đối tượng khu vực VBA Project: Có thể Sheet hay Workbook Thử click đúp vào Sheet1 giống hình đây: 10 Hà Quang Dương - 01693500562 HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU Với kiểu biến Single, có số đằng sau dấu chấm với kiểu biến Double có đến 14 chữ số theo sau dấu chấm Số cuối kiểu biến Single số thứ (Sau dấu chấm) kiểu biến Double sử dụng Single, Excel tự làm trịn lên Vì xin nhắc lại: bạn muốn sử dụng số xác hơn, giảm thiếu tối đa sai số biến kiểu biến Double lựa chọn hợp lý Thêm loại biến sử dụng Variant Dim FloatingPoint As Variant Kiểu biến Variant sử dụng bạn không chắn giá trị lưu trữ nó, số mà chữ đối tượng Tuy nhiên, việc sử dụng biến hãn hữu bạn lạm dụng khiến chương trình bạn chạy chậm Biến có kiểu Variant chiếm 16 bytes nhớ cho việc lưu trữ số 22 bytes cho lưu trữ text Sẵn tiện đây, nói ln có bạn thắc mắc: “Tại phải làm nhiều kiểu biến rắc rối phức tạp làm nhỉ? –> Xin trả lời lập trình, chương trình khơng đơn giản cặp Sub End Sub đơn giản mà lên đến nghìn, chục nghìn cặp đó…Việc thiết lập biến giúp bạn tiếp kiệm dung lượng nhớ khiến cho phần mềm hoạt động nhanh hơn, linh hoạt tránh bị treo Kiểu biến chuỗi ký tự Nếu bạn muốn lưu trữ biến dạng văn bạn sử dụng kiểu biến String (Nhớ String Sting đâu ^_^) Dim MyText As String Có nhiều phương pháp xây dựng sẵn có mà bạn sử dụng với chuỗi văn bản, học kĩ học sau, nắm vững kiểu biến phát triển kỹ lập trình VBA bạn nhiều Sau tổng kết liệt kê số kiểu biến thường dùng Excel VBA 64 Hà Quang Dương - 01693500562 HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU • • • • • • • • Byte (Kiểu biến liệu) Bloolean (Kiểu biến có giá trị trả Đúng (True) Sai (False) Integer (Kiểu biến số nguyên có giới hạn vùng giá trị -( nhỏ) Long (Kiểu biến số nguyên có giới hạn vùng giá trị – (lớn) Currency (Kiểu biến tiền tệ) Single (Kiểu biến số thực có giới hạn khả làm tròn số, miền giá trị lớn ) Double (Kiểu biến số thực có giới hạn khả làm tròn 14 số, miền gái trị cực lớn) Date (Kiểu biến ngày tháng) 65 Hà Quang Dương - 01693500562 HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU BÀI 14 – CÂU LỆNH IF Những khái niệm tảng hai phần trước hẳn phần giúp bạn có hiểu biết VBA, ngơn ngữ lập trình đơn giản bác Bill đưa vào office Thực tế chứng minh, học VBA, hiểu VBA làm chủ nó, bạn cải thiện suất làm việc Hành trình tự học VBA gian nan, thường gây nản Bởi vậy, mà người thành công xã hội thường nhóm người cịn lại… Khi bước sang phần này, tức bạn bước sâu vào giới lập trình mà thứ tạo trải qua tính tốn người Hay nói khác đi, thứ xảy ngẫu nhiên mà đặt Để làm điều này, nhà lập trình sử dụng đến câu lệnh mang tính điều kiện Tức để kiện B xảy phải đảm bảo điều kiện A Và điều kiện A khơng có điều xảy ra…? Đương nhiên kiện B không xuất không Nhưng kiện C có hội nhen nhóm sinh ra… Mình nói vui này: Hãy giả sử có ba con: Sư tử – Linh cẩu – Thỏ Để kiện B (Linh cẩu chén Thỏ) xảy phải đảm bảo điều kiện khơng có Sư tử Nhưng có sư tử kiện C ( Sư tử chén Linh cẩu) có hội nhen nhóm sinh ra… =))) Mọi nếu, thì lập trình VBA hầu hết ngơn ngữ lập trình khác người ta dùng câu lệnh IF với kiểu luận tiếng Việt là: Nếu… thì… Câu lệnh IF Chúng ta làm quen với vài câu thú vị lấy từ sống thường ngày đây: IF (nếu) tơi có đơi giày hạnh phúc IF (nếu) ăn nhiều kẹo tơi bị sún IF (nếu) tơi truy cập h2account.com tơi nhận học VBA miễn phí Dễ nhận thấy lập trình, phải phụ thuộc nhiều câu lệnh IF lập trình phải lập chương trình chạy tiếp nhận kết khác Mỗi kết khác lại dẫn đến với công việc khác IF phát huy hết hiệu Cấu trúc câu lệnh IF VBA giống này: If Condition_To_Test Then ‘CODE HERE 66 Hà Quang Dương - 01693500562 HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU End If Bây phân tích kĩ câu lệnh bạn buộc phải ghi nhớ, nằm lịng cách gọi “Khắc cốt ghi tâm” quên bạn khơng trở thành lập trình viên Trước tiên, bạn bắt đầu với từ khóa If (Chữ I viết hoa chữ f viết thường Cho dù bạn viết hoa hết viết thường hết excel tự động chuyển dạng chuẩn này) sau khoảng cách điều kiện mà bạn muốn kiểm tra Điều kiện (TRUE) sai (FALSE) Theo sau điều kiện từ khóa Then (Viết hoa chữ T) Và câu lệnh IF đóng lại với cụm từ khóa End if Ở If End If đoạn code bạn đoạn code thực điều kiện mà bạn muốn kiểm tra (TRUE) Ngược lại điều kiện lại sai (FALSE) VBA bỏ qua phần chạy tới End If tiếp tục tiến trình khác lập trình (nếu có) * Có lưu ý nhỏ đoạn code có khơng cụm từ khóa màu đỏ biểu thức điều kiện cần kiểm tra bắt buộc phải có không VBA báo lỗi Và không giống việc enter tạo sub, bạn phải tự đánh cụm từ khóa End If muốn kết thúc câu lệnh If Cách tốt để ghi nhớ thực hành nhiều lần, bạn thả lỏng đầu óc, thư giãn thật thoải mái Chúng ta tạo file excel cho chuỗi học phép tốn LOGIC có điều kiện đừng quên lưu dạng Excel Macro- Enable Workbook, file excel có đuổi XLSM có dấu chấm than to đùng màu vàng Tiếp theo, bạn click vào tab Developer (Ví Thạch Sanh dành cho bạn cịn nhớ) sau bấm vào biểu tượng VIew Code mục Controls Việc click View Code mở trình biên dịch VBA Và lý cửa sổ viết code khơng bạn click đúp vào sheet1 bên tay trái trình biên dịch VBA Và bạn lại khơng nhìn thấy Sheet1 chắn dùm là file excel mới, chắn điều bạn bấm vào View –> Project Explorer xong Tạo sub cửa sổ viết code với tên gọi: If_Test_1 chèn đoạn code vào Dim MyNummber As Integer MyNumber = 10 67 Hà Quang Dương - 01693500562 HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU If MyNumber = 10 Then MsgBox “Number = 10″ End If Đoạn code bạn trông giống này: Ở đoạn code giữa, thiết lập biến nguyên gọi MyNumber Tiếp theo gán giá trị cho nó số 10 thông qua dấu Các bạn khơng thích số 10 lưu trữ số tùy chọn ngày sinh chẳng hạn, lưu ý thay thay đồng dòng bên Giờ bàn sâu đến nhân vật ngày hơm Câu lệnh If If MyNumber = 10 Then Bạn có từ khóa “If”” từ khóa “Then”, hai từ khóa có điều kiện mà muốn kiếm tra Điều là: MyNumber = 10 Nhìn giống việc gán giá trị bên điều kiện mà muốn kiểm tra, ý nghĩa hồn tồn khác Nếu bên gán giá trị cho MyNumber 10 bên dưới, đưa việc MyNumber = 10 điều kiện để kiểm tra tính xác Bằng cách diễn đạt rằng: Nếu MyNumber có giá trị 10, bạn tạo hai khả TRUE (Đúng) FALSE (Sai) Và mà VBA kiểm tra (Chẳng riêng VBA đâu, ngơn ngữ lập trình kiểm tra theo kiểu TRUE, FALSE À, mà excel câu lệnh IF đơn giản kiểm tra mà ^^) 68 Hà Quang Dương - 01693500562 HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU Chẳng cần nói nhiều, biết điều kiện mà đặt chắn rồi, bạn đặt dấu nhấp chuột vào đoạn code Sub End Sub, sau ấn F5 để chạy chương trình Bạn nhìn thấy hộp thoại hiển thị giống hình đây: Click OK hộp thông báo để quay trở lại cửa sổ code Bây giờ, thử thay đổi việc gán giá trị biến MyNumber từ 10 thành 11 Cũng lại đặt chuột dư ấn nút F5 lại lần để chạy code Ầu, chẳng có hiển thị Lý dẫn đến việc tượng xảy nằm chỗ: Trong câu lệnh IF mà bạn viết trên, điều kiện cho chương trình điều kiện đưa vào kiểm tra xảy giá trị TRUE (đúng) Tức MyNumber có giá trị 10 hiển thị hộp thoại thơng báo có nội dung “Number = 10″ Bởi vậy, mà gán giá trị biến MyNumber = 11 tức điều kiện FALSE (sai) ứng dụng sau ấn F5 khơng có tượng xảy VBA bỏ qua câu lệnh FALSE Trong phần tiếp theo, học cách điều khiển VBA câu lệnh IF để FALSE xảy ln kiểm sốt tình hình cách sử dụng Else vàElseif 69 Hà Quang Dương - 01693500562 HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU BÀI 15 – ELSE…ELSEIF Ở học trước, bạn thấy cách viết câu lệnh If đơn thuần, học này, mở rộng câu lệnh if với Else Elseif Tại phải mở rộng? Vì bạn đễ dàng thấy rằng, ví dụ học trước, viết câu lệnh if mà khơng có thêm phần mở rộng, dẫn đến tình trạng điều kiện sau if không xảy (FALSE) dường VBA khơng có hoạt động Else, Elseif khiến cho VBA tích cực vận động Else Giữa If End If bạn thêm phần Else Cấu trúc câu lệnh If…Else sau: If Dieu_Kien_Kiem_Tra Then Else End If Tạm dịch sau: Nếu (If) điều kiện kiểm tra (Dieu_Kien_Kiem_Tra) (Then) … Nếu điều kiện kiểm tra sai (Else) … Kết thúc câu lệnh if (End if) Đại khái phần mở rộng Else giúp giải dứt điểm trường hợp điều kiện kiểm tra khơng Cùng nhớ lại trước nào, có phải trước đặt biến MyNumber = 11 nên câu lệnh If, MyNumber = 10 khơng có xảy ấn F5 Giờ với ví dụ trước, bổ sung thêm phần mở rộng Else bên nhé: Dim MyNumber As Integer MyNumber = 11 If MyNumber = 10 Then MsgBox “Number = 10″ Else MsgBox “Number is not 10″ End If Mình tạm giải thích đoạn code sau: Khai báo biến MyNumber số nguyên, đặt biến MyNumber có giá trị 11 Nếu biến MyNumber 10 hộp thơng báo có nội dung “MyNumber = 10″ Nếu biến MyNumber khơng 10 hộp thoại thơng báo có nội dung “MyNuber is not 10″ Khi chạy chương trình (bấm nút F5 bàn phím) bạn thấy hộp thoại xuất hình đây: 70 Hà Quang Dương - 01693500562 HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU Nhấn OK hộp thông báo để quay lại cửa sổ mã code Thay đổi số từ dòng thứ hai mã code bạn từ 11 sang 10 Khi bạn chạy mã code lại lần nữa, bạn thấy hộp thông báo “MyNumber = 10″ điều kiện kiểm tra (TRUE) Câu lệnh IF vốn hay sử dụng lập trình viên lại bỏ qua phần mở rộng Else này, vậy, bạn cần ghi nhớ từ khóa, triển khai cách hợp lý để kiểm sốt tồn việc lập trình liên quan đến IF, câu lệnh phổ biến không VBA mà ngôn ngữ lập trình Khi điều kiện khơng (FALSE) có Else, có nhiều điều kiện muốn kiểm tra đồng thời thê nào? Elseif giải pháp phù hợp cho bạn ElseIf Thực tế cho thấy rằng, có nhiều hai điều kiện muốn kiểm tra điều kiện kiểm tra lại cần trả thông báo khác ElseIf phát huy mạnh Cịn có nhiều hai điều kiện cần kiểm tra mà phần kết trả thơng báo sử dụng kết hợp từ khóa And/Or (Và/Hoặc) phần điều kiện cần kiểm tra Một ví dụ đơn giản sau: Dim MyNumber As Integer Dim MyNumber1 As Integer MyNumber = 10 MyNumber1 = 11 If MyNumber 10 and MyNumber1 = 11 Then MsgBox “So Good” Else MsgBox “So Bad” End if Trong ví dụ bạn thay từ khóa and từ khóa or And tức điều kiện xảy đồng thời, Or tức cần điều kiện Đấy hai điều kiện kiểm cần kiểm tra cần hình cụm từ “So Good” “So Bad” Và cần nhiều tùy chỉnh điều kiện trả dựa kết thực có Elseif dùng sau: 71 Hà Quang Dương - 01693500562 HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU If Dieu_Kien_Kiem_Tra_1 Then ElseIf Dieu_Kien_Kiem_Tra_2 Then End If Các bạn có nhiều dịng Else đoạn code bạn có nhiều điều kiện cần kiểm tra Kiểu sau: If Dieu_Kien_Kiem_Tra_1 Then … ElseIf Dieu_Kien_Kiem_Tra_2 Then … ElseIf Dieu_Kien_Kiem_Tra_3 Then … End If Nhớ cịn có nhiều bạn muốn ^^ Và để kiểm sốt hết điều kiện cịn thiếu (đơi bỏ sót) tiếp tục dùng phần mở rộng Else sau: If Dieu_Kien_Kiem_Tra_1 Then ElseIf Dieu_Kien_Kiem_Tra_2 Then Else End If Và để thử nghiệm nói bạn mở excel, vào phần code VBA (Alt +F11) tạo Sub với tên gọi If_Test_2 Tiếp tục hoàn thiện phần code cho giống đây: Trước hết VBA kiểm tra biến MyNumber với giá trị 10 Nếu điều kiện kiểm tra (TRUE) phần hộp thoại thông báo thực Nếu MyNumber khơng có giá trị 10 VBA kiểm tra xuống đến phần Elself Bằng việc kiểm tra MyNumber với giá trị 11, Nếu (TRUE) hộp thơng báo thứ hai hiển thị Nếu TRUE VBA bỏ qua đến End 72 Hà Quang Dương - 01693500562 HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU If tiếp tục công việc (Trong trường hợp khơng làm viết tí tẹo code thơi mà) Bây quay trở lại sổ code bạn thay đổi dòng thứ hai từ MyNumber = 11 sang MyNumber =10 Chạy mã code bạn lần hộp thông báo xuất (MyNumber = 10) Tiếp tục trở lại cửa sổ codecủa bạn thay đổi MyNumber sang 12 Nếu bạn thử chạy mã code bây giờ, khơng có xảy Khơng có xảy If dịng Elself đánh giá FALSE Và nên phần mở rộng Else lại có đất dụng võ rồi: If MyNumber = 10 Then MsgBox “Number = 10″ ElseIf MyNumber = 11 Then MsgBox “Number = 11″ Else MsgBox “Not 10 or 11″ End If Chạy mã code bạn lại bạn thấy hộp thông báo thứ ba xuất (Not 10 or 11) Bằng cách thêm Else bạn đảm bảo phần câu lệnh If TRUE Trong học tiếp theo, bạn tìm hiểu tốn tử điều kiện mà thường sử dụng với câu lệnh If 73 Hà Quang Dương - 01693500562 HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU BÀI 16 – TỐN TỬ CĨ ĐIỀU KIỆN Chào mừng bạn đến với hệ thống tự học VBA hoàn tồn miễn phí từ website H2 Account – Website thức phần mềm kế toán excel H2 Account Tất viết biên soạn lược bỏ nhiều từ ngữ chuyên môn nhằm giúp bạn làm quen với VBA dễ dàng tiếp cận việc học ngơn ngữ lập trình Tong học trước với câu lênh IF, bạn sử dụng tốn tử có điều kiện dấu “=” Thử nhớ lại nhé: MyNumber = 10 không? Ok, với ngơn ngữ lập trình bạn cần sử dụng nhiều điều kiện thế, giống Mặc dù bảng bảng tiếng Anh dựa chiều dấu để hiểu ý nghĩa toán tử Bằng (=) – Nhỏ () – Nhỏ (=)- Không () Khi điều kiện kiểm tra bạn phức tạp nhiều Chúng ta tạo Sub với tên gọi : If_Test_3 gõ phần code bên sub đây: Dim MyNumber As Integer MyNumber = 10 If MyNumber < 20 Then MsgBox MyNumber & ” is Less than 20″ End If Trơng đại khái này: 74 Hà Quang Dương - 01693500562 HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU Như thường lệ, khai báo biến MyNumber dạng số nguyên gán giá trị 10 cho Các bạn quan sát phần điều kiện kiểm tra phía sau từ khóa If: If MyNumber < 20 Then Các bạn thử dịch nghĩa câu (tham khảo trước) kết hợp với dòng lệnh nhé: MsgBox MyNumber & ” is Less than 20″ Một ký tự đặc biệt xuất hiện, & Đây ký tự đặc biệt từ học đầu đến bạn gặp cịn khơng đặc biệt excel Chúng ta thường dùng để nối hàm lại với Và câu lệnh tác dụng & nối biến MyNumber với cụm từ “is less than 20″ (nhỏ 20) Một số bạn viết xong câu lệnh tưởng tượng hộp thoại thơng báo lên dịng chữ “MyNumber is less than 20″ Nhưng khơng, lại hình đây: (nhớ phải ấn F5 nút tam giác xanh bên menu để chạy code nhé) Oh, khơng có từ MyNumber hộp thoại Thay vào số 10 Tại nhỉ? Vì gán cho biến MyNumber giá trị 10 Và câu lệnh: MsgBox MyNumber & ” is Less than 20″ bạn có thấy sau MsgBox dấu ngoặc kép “” mà lại tên biến MyNumber Như có nghĩa VBA lấy giá trị biến để lồng ghép vào nội dung hiển thị hình sử dụng câu lệnhMsgBox Quay trở lại đoạn code thay đổi biến MyNumber = 10 dòng thứ hai thành MyNumber = 20 75 Hà Quang Dương - 01693500562 HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU Chạy code lại bạn khơng thấy có hội thoại lên Lý MyNumber = 20 điều kiện kiểm tra sau từ khóa If nhỏ 20 không (FALSE) Trong lại không dùng thêm phần mở rộng Else hay Else if (Bài 15) Nên khơng có chuyện xảy hồn tồn hợp lý Bây giờ, bạn thử thay đổi ký tự < (nhỏ hơn) thành ký tự 20 Then MsgBox MyNumber & ” is Greater Than 20″ Else MsgBox MyNumber & ” is below 20″ End If Cùng dịch code nhé: Khai báo biến MyNumber Số nguyên Gán MyNumber 19 Nếu MyNumber 20 Hiện hộp thoại: Giá trị MyNumber is 20 Nếu MyNumber > 20 Hiện hộp thoại: Giá trị MyNumber is Greater Than 20 Nếu không xảy hai trường hợp Hiện hộp thoại: Giá trị MyNumber is below 20 Kết thúc câu lệnh If 77 Hà Quang Dương - 01693500562 HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU Tự học VBA thật thú vị phải không bạn, bước bước một, ôn ôn lại kiến thức tưởng chừng đơn giản giúp bạn nắm cấu trúc lập trình VBA, để từ đoạn code đơn giản trên, bạn kiên trì học thêm học tiếp theo, tin bạn tự xây dựng chương trình lớn giải vấn đề tồn công việc bạn 78 Hà Quang Dương - 01693500562 ... 01693500562 HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU 44 Hà Quang Dương - 01693500562 HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU BÀI 09 – THỰC HÀNH VỀ BIẾN Trước vào học này, liệt... - 01693500562 HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU BÀI 08 – KHÁI NIỆM CƠ BẢN VỀ BIẾN Bắt đầu sang 8, học khái niệm chun mơn lập trình hơn, trừu tượng đòi hỏi người học cần tập trung,... nghĩ trình độ bạn nâng dần theo thời gian ” Thái Nguyên , 28-06-2016 Hà Quang Dương - 01693500562 HỌC LẬP TRÌNH VISUAL BASIC CHO NGƯỜI MỚI BẮT ĐẦU LỜI NÓI ĐẦU Chào mừng bạn đến với chương trình học