Đăng ký học Excel chuyên đề công thức dò tìm và tham chiếu (tối 29 và 31/8) - TPHCM

Đăng ký học VBA và ADO - 3 chủ nhật 10, 17 và 24/9 - TPHCM

Add-in Input From List - Hỗ trợ nhập liệu từ danh mục có sẵn

Thảo luận trong 'Các Add-ins cho excel' bắt đầu bởi huuthang_bd, 15 Tháng bảy 2016.

  1. thuongsykxps

    thuongsykxps Thành viên mới

    Mình đang test thử file này, và add-in đang dùng, bạn xem giúp mình với. Cảm ơn nhiều.
     

    Các file đính kèm:

  2. Drghost

    Drghost Thành viên mới

    Em dùng office 2016 bản 64bits bị lỗi như bài 199. Anh Thắng fix lỗi giúp
     
    huuthang_bd thích bài này.
  3. songhovl201

    songhovl201 Thành viên hoạt động

    Mình Test rồi. Đâu có bị lỗi gì đâu.
     
  4. huuthang_bd

    huuthang_bd Thay thái độ đổi cuộc đời

    Có lẽ có vấn đề với office 64bit. Tôi không có điều kiện kiểm tra nhưng sẽ thử sửa. Các bạn bị lỗi chạy thử giúp tôi nhé.
     
  5. huuthang_bd

    huuthang_bd Thay thái độ đổi cuộc đời

    Bạn nào dùng Office 64 bit chạy thử file này giùm tôi xem còn lỗi không nhé.
     

    Các file đính kèm:

  6. ketxu

    ketxu iCAD - Ketxu

    Đôi khi lòng muốn yêu em thật nhiều ...
    Mà ân tình đó trả lại bao nhiêu ^^
     

    Các file đính kèm:

  7. batman1

    batman1 Thành viên chính thức

    Theo tôi thì bạn không sửa nhiều chỗ nên chắc còn lỗi. Sau đây là vài ví dụ, không phải là tất cả. Code lấy từ module l_l_l_I_l_l_I_l_l_l_l_I_I
    1. Bạn có
    Mã:
    Private Type l_l_I_I_l_l_I_l_I_I_I_l_I
    l_l_l_I_l_l_I_l_I_I_l_I_I_I As l_I_I_I_l_l_I_I_I_l_l_I_l_l
    l_l_l_I_l_l_I_l_l_I_l_l_l_l As Long
    l_I_l_I_I_l_l_l_l_I_I_l_I As Long
    Time As Long
    dwExtraInfo As Long
    End Type
    
    Đơn giản đây là cấu trúc MSLLHOOKSTRUCT. Không rõ là tất cả các trường có kiểu Long hay không. Tôi nghĩ Time chắc là Long. Nếu 3 cái còn lại phải là LongPtr thì phải cho cấu trúc vào #If ... #Else ... #End If

    2.
    Mã:
    Function l_I_I_l_I_I_l_I_I_l_I_I_I_l(ByVal nCode As Long, ByVal wParam As Long, lParam As l_l_I_I_l_l_I_l_I_I_I_l_I) As Long
    
    Theo tôi bạn phải cho hook procedure này vào #If ... #Else ... #End If. Tức đại loại
    Mã:
    #If hichic Then
    Function l_I_I_l_I_I_l_I_I_l_I_I_I_l(ByVal nCode As Long, ByVal wParam As LongPtr, lParam As l_l_I_I_l_l_I_l_I_I_I_l_I) As LongPtr
    #Else
    Function l_I_I_l_I_I_l_I_I_l_I_I_I_l(ByVal nCode As Long, ByVal wParam As Long, lParam As l_l_I_I_l_l_I_l_I_I_I_l_I) As Long
    #End If
    
    3.
    Mã:
    Private l_l_l_I_I_I_l_I_I_I_I_l_l_l As Long
    
    Đây là biến lưu trữ giá trị trả về bởi hàm SetWindowsHookEx (hook handle), vậy nó là Long hoặc LongPtr. Theo tôi phải cho khai báo vào #If ... #Else ... #End If

    4. Bạn có
    Biến l_l_l_I_I_l_l_l_l_I_I_I_l lưu giá trị trả về bởi GetWindowLong nên là Long hoặc LongPtr. Tức theo tôi phải cho vào #If ... #Else ... #End If

    Mã:
    #If hichic Then
    Dim l_l_l_I_I_l_l_l_l_I_I_I_l As LongPtr
    #Else
    Dim l_l_l_I_I_l_l_l_l_I_I_I_l As Long
    #End If
    
    Đây chỉ là ý kiến chủ quan thôi vì tôi không có Office 64 bit để kiểm nghiệm
     
    Lần chỉnh sửa cuối: 12 Tháng tám 2017
    befainthuuthang_bd thích bài viết này.
  8. huuthang_bd

    huuthang_bd Thay thái độ đổi cuộc đời

    Cảm ơn anh. Để em sửa lại thử có được không.
    Em cũng không có office 64 bit để thử nên chỉ sửa cầu may.
    Em đọc một số bài thấy bảo office 64 bit dùng LongPtr cũng có thể lỗi nên chỉ sửa từ LongPtr thành LongLong xem thử được không chứ chưa kiểm tra lại toàn bộ code.
     
    thanthai thích bài này.
  9. thanthai

    thanthai Thành viên mới

    Bác ơi! Bác sửa xong cho bản 64 bit chưa. Em tải bản gần nhất chạy vẫn bị lỗi. Cảm ơn bác nhiều!
     
  10. huuthang_bd

    huuthang_bd Thay thái độ đổi cuộc đời

    Tôi chưa có điều kiện sửa bạn ơi (chưa có office 64 bit để thử).
     

Chia sẻ trang này