Could not set RowSource property (1 người xem)

  • Thread starter Thread starter 148btx
  • Ngày gửi Ngày gửi
Liên hệ QC

Người dùng đang xem chủ đề này

148btx

Thành viên mới
Tham gia
14/10/06
Bài viết
40
Được thích
103
Nghề nghiệp
Thiết kế điện
Xin được trợ giúp làm Add-in. Tôi làm một chương trình tính toán điện cho công việc riêng: Chương trình chạy rất tốt trên .xls , trong chương trình của tôi có các UserForm nằm trong VBA và lấy dữ liệu từ các Sheets. Nhưng khi save để làm Add-in (trở thành .xla) và lúc sử dụng Add-in này thì luôn báo lỗi như sau:

Run-time error '360:
Could not set RowSource property. Invalid property value.

Xin được chỉ bảo
Cảm ơn nhiều
 
Bạn xem phương án của mình làm và tùy biến nha. Nhớ tải file, giải nén ra trước mới chạy được
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Upvote 0
em cảm ơn vì đã reply, em add file lên đây

Bài này tôi làm cho bạn bằng ADO để liên kết với file Dich mà không cần mở file này.

Thủ tục liên kết:

Mã:
Private Sub ExConnect()
    If ExCnn.State = 1 Then ExCnn.Close
    With ExCnn
        .ConnectionString = "Provider= Microsoft.Jet.OLEDB.4.0; data source=" & ThisWorkbook.Path & "/dich.xls" & _
                            ";Extended Properties=Excel 8.0;"
        .CursorLocation = adUseClient
        .Open
    End With
End Sub

Liên kết và nạp List cho ListBox:

Mã:
Private Sub ListInfo()
    Call ExConnect
    Dim ExSQL As String, RcdSet As New ADODB.Recordset
    ExSQL = "SELECT HOTEN FROM [Sheet1$] "
    RcdSet.Open ExSQL, ExCnn, 3, 1
    
    With Sheet1
        .Range("IQ:IQ").ClearContents
        .Range("IQ1").CopyFromRecordset RcdSet
         ListBox1.List() = Range(.[IQ1], .[IQ65536].End(xlUp)).Value
        .Range("IQ:IQ").ClearContents
    End With
    
    RcdSet.Close
    Set RcdSet = Nothing
    ExCnn.Close
    Set ExCnn = Nothing
End Sub

Khi click hay dùng mũi tên lên xuống sẽ hiện lên mục đang lựa chọn:


(Ở đây tôi không dùng MsgBox vì nó không hiển thị được dấu tiếng Việt, vừa làm mất thời gian bấm nút OK nên tôi cho hiển thị bằng Label, nhưng nếu cần bạn vẫn có thể sử dụng MsgBox)

Mã:
Private Sub ListBox1_Click()
    LbMsg.Caption = UCase(ListBox1.Value)
   [COLOR=#008000] 'MsgBox ListBox1.Value[/COLOR]
End Sub

Bạn đặt 2 file này ở bất cứ thư mục nào cũng được và phải đảm bảo 2 file này ở cùng thư mục, đồng thời cũng không được đổi tên file dich.xls

Lưu ý, khi chạy bằng ADO, trong cửa sổ VBE bạn chọn Tool, Reference và phải check vào mục:
Microsoft ActiveX Data Objects 2.6 Library

attachment.php
 

File đính kèm

  • Picture1.jpg
    Picture1.jpg
    60.1 KB · Đọc: 40
  • KetNoi.rar
    KetNoi.rar
    19 KB · Đọc: 16
Lần chỉnh sửa cuối:
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom