2017-01-11 18 views
13

Tôi vừa cài đặt phần mềm bổ sung Rubberduck VBE v2.0.11.2453 (MSIL) trên hệ điều hành Windows 10.Menu con của UIduck bị vô hiệu hóa

Khi tôi mở sổ làm việc Excel được bật macro trong Excel và khởi chạy trình chỉnh sửa VBA, Rubberduck bắt đầu nhưng tất cả các lệnh trong menu Rubberduck đều bị tắt.

Tôi đang làm gì sai?

enter image description here

+6

Lệnh sẽ bị tắt nếu chúng không khả dụng dựa trên trạng thái bổ trợ hiện tại. Trong trường hợp này có vẻ như phân tích ban đầu chưa được thực hiện. Nhấp vào "mũi tên tái chế" màu lam trong thanh trạng thái RD. – Comintern

Trả lời

9

Disclaimer: Tôi quan trọng với sự phát triển của Rubberduck add-in.

Bạn đã làm gì sai =)

Trong phiên bản alpha 2.x trước đó chúng tôi phát hiện ra rằng phát động phân tích ban đầu khi khởi động đã gây ra vấn đề (tai nạn bạo lực), vì add-in là, về cơ bản, sẵn sàng trước khi VBE đã hoàn tất việc thiết lập mô hình đối tượng cho (các) dự án được nạp trong IDE. Về cơ bản VBE tải các add-in của nó trước khi nó hoàn thành việc xây dựng chính nó, vì vậy chúng ta không thể khởi chạy một nhiệm vụ phân tích cú pháp ngay khi khởi động.

Vì vậy, chúng tôi vô hiệu hóa phân tích cú pháp ban đầu/tự động, đó là lý do tại sao cần phải thực hiện thủ công (hiện tại).

Các Rubberduck CommandBar (neo đậu ở phía trên cùng của IDE theo mặc định, ngay dưới CommandBar chính) chứa một "refresh" nút:

enter image description here

Nhấp vào nút đó sẽ thay đổi trạng thái phân tích cú pháp từ " Đang chờ "/" En attente "để" Ready "/" Prêt "(sau khi đi qua một số tiểu bang).

Hầu hết các lệnh Rubberduck sẽ được kích hoạt ngay khi trạng thái "Phân tích" (không kéo dài quá lâu - nó chuyển sang "Giải mã nhận dạng" ngay lập tức sau) và tái cấu trúc được bật ở trạng thái "Sẵn sàng" (ngay cả trước khi kiểm tra kết thúc chạy).

Bạn cũng sẽ thấy rằng "refresh" nút lệnh trong toolstrip của Mã Explorer, thử nghiệm Explorer, Kiểm tra kết quảTodo Explorer toolwindows.

Bạn có thể duyệt/điều hướng mã và sử dụng VBE trong khi Rubberduck đang làm việc trong nền, nhưng xin lưu ý rằng sửa đổi mã trong khi Rubberduck đang phân tích cú pháp có thể dẫn đến một số trạng thái lỗi phân tích cú pháp; chúng tôi giả định rằng mã trong IDE là compilable =)

Hãy nghĩ rằng nút đó là "OK ducky, tôi đã thực hiện thay đổi mã, bây giờ đồng bộ hóa với IDE": bổ trợ cần biết chính xác -nhận vị trí của mỗi mã thông báo duy nhất để hoạt động như bình thường. Tái cấu trúc hoặc áp dụng sửa lỗi nhanh chóng kiểm tra trên trạng thái phân tích cú pháp không đồng bộ hóa chắc chắn là một ý tưởng tồi!

Điều đó nói rằng, vô hiệu hóa tất cả menu khi khởi động là loại lười biếng (và vụng về quá: ví dụ như các phím nóng cho việc hiển thị các thanh tra quảmã thám hiểm toolwindows sẽ làm việc mặc dù các menu bị vô hiệu hóa) - chúng tôi sẽ khắc phục điều đó bằng bản phát hành tiếp theo và phân tích cú pháp ban đầu cũng sẽ tự động trở lại (chúng tôi sẽ bắt đầu sau khi trì hoãn, để cho VBE có cơ hội hoàn thành việc bắt đầu).

+1

Chỉ cần một bình luận. Trừ khi bạn có một số cách để phát hiện khi VBE đã thực sự tải xong, tôi sẽ để lại hướng dẫn sử dụng. – Kaz

+0

@ Mat's Mug: Tôi nhấp vào làm mới nhưng văn bản nút vẫn còn 'Đang chờ xử lý' và các menu phụ vẫn bị vô hiệu hóa. Tường lửa của công ty của tôi có thể là vấn đề không? 'Ver. 2.1.1.2431' Chỉnh sửa: Bây giờ nó nói 'Lỗi phân tích cú pháp ' – KacireeSoftware

+0

@KacireeSoftware đóng Excel, xác minh trong Task Manager rằng quá trình này thực sự biến mất, sau đó mở Excel bằng một sổ làm việc trống/mới, mang lại cùng một vấn đề VBE? Nếu không, hãy mở cài đặt và bật ghi nhật ký ở mức L ERI hoặc CẢNH BÁO, sau đó mở sổ làm việc không phân tích cú pháp, tạo lại sự cố và xem nhật ký có chứa bất kỳ điều gì hữu ích hay không. Nếu nó không thành công với một bảng tính trống, chắc chắn có điều gì đó sai trái. –

Các vấn đề liên quan