- Làm thế nào để cài đặt cố định hàm doiso này vào Excel, Word để dùng cho mọi trường hợp mà không phải mở file có hàm doiso này.
 - Điều mà tôi rất cần đó là làm thế nào để hàm doiso này ứng dụng được trong Word." />
  • Thứ Năm, 03/03/2005 15:54 (GMT+7)

    Câu hỏi :
    Tôi đã nhập thử đoạn code của hàm doiso được trình bày trong số báo tháng 8/2001 và chạy thử nó, tôi có 1 số thắc mắc sau:
     - Chương trình này khi nhập số 0 thì không cho kết quả, nếu không nhập gì thì lại cho kết quả là "không".
     - Làm thế nào để cài đặt cố định hàm doiso này vào Excel, Word để dùng cho mọi trường hợp mà không phải mở file có hàm doiso này.
     - Điều mà tôi rất cần đó là làm thế nào để hàm doiso này ứng dụng được trong Word.

    Trả lời :
    Trước hết, chúng tôi xin lỗi do sơ xuất trong nhập liệu nên mã nguồn của hàm doiso bằng ngôn ngữ VB trong số báo T8/2001 (t.92) bị thiếu 1 lệnh. Bạn hãy thêm dòng lệnh "End If" vào trước lệnh "If chuc < 0 then Exit Do" (ở hàng thứ 4 từ dưới đếm lên của cột 2). Ngoài ra, khi nhập source code của hàm doiso, bạn phải xuống hàng trước khi viết lệnh sau mệnh đề Then của các lệnh If.

     - Đúng như bạn nói, hàm doiso trong số báo T8/2001 chưa xử lý tốt các lỗi trong thông số nhập, nên nếu bạn truyền chuỗi "0" thì nó trả về chuỗi NULL và nếu bạn truyền chuỗi không miêu tả số nguyên hợp lệ, nó sẽ hoạt động sai và trả về kết quả không tiên đoán trước. Để khắc phục lỗi này, bạn nên dùng tham số kiểu Long thay vì kiểu String, thí dụ bạn nên hiệu chỉnh lại hàm doiso như sau :

     Function doiso(ByVal val As Long) As String

     Dim s As String

     s = CStr(val)

     'phần còn lại y như cũ

     - Để có thể dùng hàm doiso trong các file Excel, bạn viết nó trong 1 module add-ins (thường có phần nới rộng *.xla) rồi "add" file add-ins vào Excel (bằng menu Tools.Add-ins). Tương tự để có thể dùng hàm doiso trong các file Word, bạn viết nó trong 1 module add-ins (thường có phần nới rộng *.dot) rồi "add" file add-ins vào Word (bằng menu Tools.Template and Add-ins).
     - Để tránh phải viết 2 module add-ins khác nhau cho 2 ứng dụng Excel và Word, bạn có thể viết hàm doiso trong module COM-Addins, lúc này cả Excel và Word đều có thể dùng chung file COM-Addins này. Qui trình chi tiết để viết 1 module Com-Addins được trình bày trong CD MSDN của Microsoft. 
    Chuyên mục: Ứng dụng văn phòng