Tôi có một ứng dụng MS Access và có vấn đề để tìm loại trả về của hàm. Có cách nào để tìm kiểu trả về của đối tượng không? Tôi có lỗi không khớp loại.Cách tìm kiểu trả về trong VBA
Trả lời
Nếu đó là chức năng tích hợp, hãy xem chủ đề trợ giúp Access.
Nếu đó là hàm do người dùng xác định, hãy kiểm tra định nghĩa của nó.
Nếu bạn không thể làm như vậy, hãy sử dụng hàm TypeName()
để cho bạn biết loại dữ liệu được trả về bởi YourFunction()
.
Debug.Print TypeName(YourFunction())
Nếu YourFunction()
trả về một biến thể, TypeName()
sẽ cho bạn biết các biến thể kiểu phụ.
Heinzi đề xuất VarType()
thay vì TypeName()
. Tôi thường xuyên tiếp cận với TypeName()
đầu tiên đơn giản bởi vì nó nhanh hơn cho tôi, và tôi hiếm khi quan tâm đến những hạn chế của nó. Tuy nhiên tôi đồng ý với Heinzi; VarType()
là tốt hơn.
JP. đưa ra hai gợi ý hữu ích khác. Đầu tiên, bạn có thể tạo một quy trình đơn giản khai báo biến số Biến thể và chỉ định giá trị trả về của hàm cho biến. Sau đó, thêm một điểm ngắt tạm thời (với F9) trên đường dây Debug.Print
đầu tiên, chạy thủ tục, sử dụng F8 để di chuyển qua từng dòng và theo dõi giá trị của biến trong Cửa sổ địa phương. (Mở cửa sổ đó từ menu chính các biên tập viên của VB View -.> Người dân địa phương Window)
Public Sub examine_YourFunction()
Dim varFoo As Variant
Debug.Print "start"
varFoo = YourFunction()
Debug.Print varFoo
End Sub
Và thứ hai, cho các chức năng được xây dựng trong đó có một kiểu trả về, bạn có thể tận dụng lợi thế của Intellisense để xem kiểu trả về như bạn đang gõ tên hàm và/hoặc tham số.
- 1. Kiểu trả về kiểu hàm
- 2. PostgreSQL: cách trả về kiểu hỗn hợp
- 3. VBA - Trả về từ một hàm trong trường hợp lỗi
- 4. On kiểu trả về Void
- 5. vba userforms hành vi trả về vận chuyển
- 6. Mẫu lưu trữ và kiểu trả về
- 7. Mã hóa kiểu PHP trả về; trong chuyển/trường hợp
- 8. kiểu trả về động của một hàm
- 9. Chức năng Excel VBA trả về một mảng
- 10. Cách sử dụng System.Action với kiểu trả về?
- 11. chức năng vba: trả về chuỗi với dòng mới
- 12. Java Generics và các kiểu trả về
- 13. khối try-catch với kiểu trả về
- 14. Trả về kiểu trừu tượng trong lớp cơ sở
- 15. Kiểu trả về boolean được cho phép trong C?
- 16. Giả lập một kiểu trả về từ một kiểu Mocked khác bằng cách sử dụng Moq
- 17. Truy cập giá trị trả về từ hàm VBA trong .NET?
- 18. Câu hỏi về CreateObject() trong VB6/VBA
- 19. Phương pháp kế thừa được trả về kiểu tham chiếu
- 20. Backbone collection.create() không trả về kiểu cập nhật
- 21. cách tìm tên chuỗi sử dụng vba?
- 22. HttpStatusCodeResult (401) trả về "302 Tìm thấy"
- 23. cách tìm và trả về đối tượng trong hàm băm java
- 24. Làm cách nào để tìm loại trả về của phương thức có System.Reflection.MethodBase trong C#?
- 25. Tìm hiểu về kiểu số trong Common Lisp
- 26. Nhiều kiểu trả về với giao diện {} và xác nhận kiểu (trong Go)
- 27. C# Có thể có kiểu trả về chung không?
- 28. Mẫu C++ xác định kiểu trả về hàm
- 29. Trailing kiểu trả về, decltype và const-Ness
- 30. Liệt kê với kiểu trả về không phải là chuỗi?
+1, lời khuyên rất tốt. Nếu bạn cần thực hiện kiểm tra kiểu khi chạy, tôi khuyên bạn nên sử dụng [VarType function] (http://office.microsoft.com/en-us/access-help/vartype-function-HA001228932.aspx) để thay thế (để tránh dây ma thuật). – Heinzi
+ 1 Đồng ý với Heinzi tại đây :) –
Bạn cũng có thể khai báo biến Biến thể, chạy hàm và gán giá trị trả về của nó cho biến, sau đó kiểm tra giá trị của biến bằng cách sử dụng Cửa sổ cục bộ. Và đối với các hàm dựng sẵn có kiểu trả về, bạn có thể thấy kiểu trả về khi bạn nhập tên hàm và/hoặc tham số. – JimmyPena