Tính hữu ích cho lập trình viên VBA

Nếu bạn phát âm từ “macro” với một hơi thở kinh hoàng và nhấn trọng âm ở âm tiết thứ hai và cụm từ “Visual Basic for Applications” nghe như một câu thần chú đối với bạn, thì bài viết này không dành cho bạn. Trong mọi trường hợp, bây giờ 🙂

Nếu bạn có ít nhất một số kinh nghiệm về lập trình macro trong VBA trong Excel và bạn không có ý định dừng lại, thì việc lựa chọn các chương trình và bổ trợ hữu ích bên dưới sẽ hữu ích (ít nhất một phần) cho bạn.

MZ-Tools - “Con dao Thụy Sĩ” dành cho lập trình viên

Sau khi cài đặt trong trình soạn thảo VBE trong menu công cụ menu con sẽ xuất hiện Công cụ MZ và một thanh công cụ mới để truy cập nhanh vào các chức năng tương tự:

Tính hữu ích cho lập trình viên VBA

Anh ấy biết làm thế nào để làm rất nhiều. Trong số các giá trị nhất, theo ý kiến ​​của tôi:

  • Tự động thêm “cá trống” để tạo các thủ tục, hàm, trình xử lý sự kiện và lỗi với cách đặt tên chính xác của các biến theo hệ thống Hungary.
  • Sao chép các điều khiển trên biểu mẫu người dùng cùng với mã của chúng.
  • Tạo dấu trang (Yêu thích) cho các thủ tục và nhanh chóng chuyển đến chúng trong một dự án lớn.
  • Chia các dòng mã dài thành nhiều đoạn và lắp ráp lại (tách và kết hợp các dòng).
  • Đưa ra số liệu thống kê chi tiết về dự án (số dòng mã, thủ tục, các yếu tố trên biểu mẫu, v.v.)
  • Kiểm tra dự án để tìm các biến và thủ tục không sử dụng (Nguồn đánh giá)
  • Tạo cơ sở mẫu mã (Mẫu mã) của riêng bạn cho các trường hợp điển hình và nhanh chóng chèn chúng vào các macro mới sau này.
  • Tự động tạo một chuỗi dài và đáng sợ để kết nối với các nguồn dữ liệu bên ngoài thông qua ADO.
  • Đính kèm phím nóng vào bất kỳ chức năng nào từ tiện ích bổ sung.

Một điều chắc chắn phải có đối với một lập trình viên ở bất kỳ cấp độ nào. Nếu bạn có phiên bản Office mới nhất, hãy đảm bảo tải xuống phiên bản mới nhất của MZ-Tools 3.00.1218 vào ngày 1 tháng 2013, bởi vì. nó đã sửa một lỗi khi làm việc với Excel XNUMX.  

Tải về liên kết Công cụ MZ

Smart Indenter - tự động thụt lề trong mã

Nó thực hiện tốt một hoạt động đơn giản nhưng rất cần thiết - nó tự động thụt lề các tab trong mã VBA, làm nổi bật rõ ràng các vòng lặp lồng nhau, kiểm tra điều kiện, v.v.

Tính hữu ích cho lập trình viên VBA

Rất thuận tiện để gán hành động này cho bất kỳ phím tắt thuận tiện nào trong phần Tùy chọn thụt lề và làm điều đó với một lần chạm.

Thật không may, tác giả của chương trình đã bỏ nó vào năm 2005 (tại sao, Carl !?) và phiên bản mới nhất trên trang web là dành cho Excel 97-2003. Tuy nhiên, chương trình hoạt động khá tốt với các phiên bản mới hơn. Lưu ý duy nhất: nếu bạn có Excel 2013, thì trước khi cài đặt Smart Indenter, trước tiên bạn phải cài đặt phiên bản mới nhất của MZ-Tools, bởi vì. nó chứa thư viện động cần thiết cho công việc của Indenter.

Tải về liên kết Thụt lề thông minh

Công cụ VBE - phần tử điều chỉnh vi mô trong các biểu mẫu

Việc căn chỉnh các điều khiển (nút, trường nhập, nhãn văn bản, v.v.) trên một biểu mẫu phức tạp có thể là một vấn đề khó khăn. Liên kết tiêu chuẩn với lưới trình chỉnh sửa thông qua menu Công cụ - Tùy chọn - Chung - Căn chỉnh các điều khiển với lưới đôi khi nó không giúp được gì nhiều và thậm chí bắt đầu gây cản trở, đặc biệt là nếu bạn cần di chuyển, ví dụ như nút chỉ một chút. Tiện ích bổ sung Công cụ VBE sẽ giúp trong vấn đề này, sau khi cài đặt, sẽ hiển thị một bảng điều khiển đơn giản, nơi bạn có thể tinh chỉnh kích thước và vị trí trên biểu mẫu cho phần tử đã chọn:

Tính hữu ích cho lập trình viên VBA

Dịch chuyển vị trí cũng có thể được thực hiện bằng Alt + mũi tên và thay đổi kích thước bằng Shift + Alt + mũi tên và Ctrl + Alt + mũi tên.

Ngoài ra, bằng cách nhấp chuột phải vào một phần tử, bạn có thể đổi tên nó ngay lập tức cùng với mã.

Tải về liên kết Công cụ VBE

VBA Diff - Tìm sự khác biệt trong mã

Công cụ này có lẽ sẽ hữu ích hơn cho các lập trình viên VBA chuyên nghiệp khi tạo các dự án lớn và phức tạp hoặc phát triển hợp tác. Chức năng chính của nó là so sánh hai dự án và hiển thị trực quan sự khác biệt về mã giữa chúng:

Tính hữu ích cho lập trình viên VBA

Có thời hạn 30 ngày miễn phí và sau đó tiện ích bổ sung sẽ yêu cầu bạn trả 39 bảng Anh cho nó (khoảng 3.5 nghìn rúp theo tỷ giá hối đoái hiện tại).

Thành thật mà nói, nó chỉ có ích trong đời tôi 3-4 lần đối với các dự án siêu lớn, nhưng sau đó nó đã giúp tôi tiết kiệm được vài ngày và rất nhiều tế bào thần kinh 🙂 Tất nhiên, luôn có một giải pháp thay thế miễn phí: xuất khẩu mã vào một tệp văn bản (nhấp chuột phải vào modulo - Xuất khẩu) và so sánh chúng sau này trong Microsoft Word bằng lệnh Đánh giá - So sánh tài liệu, nhưng với sự trợ giúp của VBA Diff, thứ tự về độ lớn sẽ thuận tiện hơn.

Tải về liên kết khác biệt VBA

Moqups và Wireframe Sketcher - tạo mẫu giao diện

Khi tạo các giao diện phức tạp để tương tác với người dùng, rất thuận tiện để thiết kế trước diện mạo gần đúng của các hộp thoại, tức là thực thi tạo mẫu. Trên thực tế, nó hóa ra dễ dàng hơn nhiều so với việc làm lại các biểu mẫu làm sẵn và mã của chúng sau này. Tôi nhớ có lần trong một dự án mà khách hàng yêu cầu làm một “menu”, nghĩa là “các tab”. Nửa ngày làm việc xuống cống 🙁

Có một số lượng lớn các chương trình trả phí và miễn phí với các mức độ phức tạp và sức mạnh khác nhau cho các tác vụ này. Tôi đã thử khoảng một tá chương trình và dịch vụ như vậy và gần đây tôi thường sử dụng moqups:

Tính hữu ích cho lập trình viên VBA

Đây là một trình soạn thảo trực tuyến:

  • Không yêu cầu cài đặt các chương trình riêng biệt. Bạn luôn có thể đến văn phòng của khách hàng và mở-hiển thị-chỉnh sửa giao diện đã tạo ngay trên trang web.
  • Chứa tất cả các yếu tố chính của hộp thoại (nhãn, nút, danh sách, v.v.) trong các phiên bản dành cho Windows và Mac.
  • Cho phép bạn xuất giao diện đã tạo ở định dạng PNG hoặc PDF hoặc gửi liên kết đến máy khách để xem trực tuyến.
  • Thực tế là miễn phí. Có những giới hạn về số lượng các yếu tố đồ họa, nhưng tôi chưa bao giờ vượt qua được chúng. Nếu bạn hết dung lượng hoặc muốn lưu trữ nhiều dự án lớn cùng một lúc, bạn luôn có thể nâng cấp lên phiên bản cao cấp với giá 99 đô la mỗi năm.

Nói chung, đối với các nhiệm vụ của một nhà phát triển trong VBA - tôi nghĩ là quá đủ.

Nếu ai đó về cơ bản cần một tùy chọn ngoại tuyến (ví dụ: để làm việc mà không cần truy cập Internet trên bờ biển), thì tôi khuyên bạn nên Phác thảo khung dây:

Tính hữu ích cho lập trình viên VBA

Sau thời gian dùng thử miễn phí trong 2 tuần, anh ấy sẽ yêu cầu bạn mua với giá 99 đô la tương tự.

liên kết đến moqups

Tải về liên kết Phác thảo khung dây

Invisible Basic - mã obfuscator

Rất tiếc, không thể khóa mã nguồn macro của bạn một cách an toàn bằng mật khẩu trong Microsoft Excel. Tuy nhiên, có cả một lớp chương trình được gọi là người làm phiền (Từ tiếng Anh. obfuscate - nhầm lẫn, nhầm lẫn), làm thay đổi giao diện của mã VBA theo cách sẽ cực kỳ khó đọc và hiểu nó, cụ thể là:

  • tên của các biến, thủ tục và hàm được thay thế bằng các bộ ký tự dài vô nghĩa hoặc ngược lại, bằng các ký hiệu chữ cái ngắn không thể hiểu được
  • các thụt lề của bảng trực quan bị loại bỏ
  • bị xóa hoặc ngược lại, ngắt dòng được đặt ngẫu nhiên, v.v.

Thành thật mà nói, tôi không phải là người thích sử dụng những phương pháp này. Đặc biệt, với PLEX, tôi quyết định rằng sẽ tốt hơn nếu cung cấp cho người mua phiên bản đầy đủ mã nguồn mở, dễ hiểu và có nhận xét - điều này đối với tôi có vẻ đúng hơn. Tuy nhiên, các lập trình viên đồng nghiệp của tôi đã nhiều lần gặp trường hợp một chương trình như vậy sẽ rất hữu ích (lập trình viên đã thực hiện công việc, nhưng khách hàng không trả tiền, v.v.) Vì vậy, nếu bạn cần nó, hãy biết lấy nó ở đâu. “Chúng tôi là những người hòa bình, nhưng đoàn tàu bọc thép của chúng tôi…” và tất cả những điều đó.

Tải về Cơ bản vô hình

Code Cleaner - làm sạch mã

Trong quá trình làm việc trên một dự án (đặc biệt nếu nó lớn và dài), "rác" bắt đầu tích tụ trong các mô-đun mã và biểu mẫu - những mẩu tin lưu niệm dịch vụ trình soạn thảo VBE có thể dẫn đến những trục trặc không mong muốn và không mong muốn. Tính thiết thực Trình dọn mã dọn dẹp mớ hỗn độn này theo cách đơn giản nhưng đáng tin cậy: xuất mã từ các mô-đun sang tệp văn bản, sau đó nhập mã sạch trở lại. Tôi đặc biệt khuyên rằng khi làm việc trong các dự án lớn, hãy tiến hành “dọn dẹp” định kỳ như vậy.

Tải về liên kết Trình dọn mã

Trình chỉnh sửa XML ruy-băng

Nếu bạn muốn tạo tab của riêng mình với các nút đẹp trên ruy-băng Excel để chạy macro của mình, thì bạn không thể thực hiện nếu không có trình chỉnh sửa tệp XML giao diện. Chắc chắn, thuận tiện và mạnh mẽ nhất hiện nay là chương trình trong nước về vấn đề này. Trình chỉnh sửa XML ruy-băngtạo bởi Maxim Novikov.

Tính hữu ích cho lập trình viên VBA

Phần mềm hoàn toàn tuyệt vời đó:

  • sẽ cho phép bạn dễ dàng thêm các tab, nút, danh sách thả xuống và các yếu tố khác của giao diện Office mới vào ruy-băng
  • fully supports language
  • hỗ trợ chỉnh sửa bằng cách hiển thị gợi ý theo ngữ cảnh
  • có thể dễ dàng làm chủ bài học
  • hoàn toàn miễn phí

Tải về liên kết Trình chỉnh sửa XML ruy-băng

PS

Trong nhiều năm, Microsoft đã ngang nhiên phớt lờ các nhà phát triển VBA, coi đây dường như là một ngôn ngữ lập trình kém cỏi. Theo định kỳ, các tin đồn cho rằng phiên bản Office tiếp theo sẽ không còn Visual Basic nữa hoặc nó sẽ được thay thế bằng JavaScript. Các phiên bản mới của Visual Studio thường xuyên ra mắt với các tính năng mới và trình soạn thảo VBE đã bị mắc kẹt vào năm 1997, vẫn không thể thụt lề mã bằng các công cụ tiêu chuẩn.

Trên thực tế, hàng nghìn người đang tiết kiệm hàng giờ và hàng ngày nhờ các lập trình viên VBA tạo macro để tự động hóa quy trình xử lý dữ liệu văn phòng hàng ngày. Bất cứ ai đã thấy cách một macro trong 10 dòng mã gửi tệp đến 200 khách hàng trong nửa phút, thay thế ba giờ làm việc ngu ngốc, sẽ hiểu cho tôi 🙂

Và nhiều hơn nữa. 

Tất cả các chương trình trên hoàn toàn là sự lựa chọn cá nhân của tôi và đề xuất cá nhân dựa trên kinh nghiệm cá nhân. Không ai trong số các tác giả yêu cầu tôi quảng cáo và không trả tiền cho nó (và tôi sẽ không lấy nó, về nguyên tắc). Nếu bạn có điều gì đó để thêm vào danh sách trên - chào mừng bạn đến với các ý kiến, lòng biết ơn của nhân loại sẽ không còn nợ.

 

Bình luận