Lấy nội dung chat trên Skype

Liên hệ QC

dhn46

Hướng tới tương lai
Tham gia
1/3/11
Bài viết
3,251
Được thích
3,870
Chào các anh chị,

Các anh chị cho dhn46 hỏi vấn đề lấy nội dung chat từ Skype.

dhn46 đã code được phần gửi tin nhắn từ Excel lên Skype song vẫn chưa biết cách lấy nội dung tin nhắn phản hồi từ Skype về Excel.

Vậy mong các anh chị trợ giúp code này.

dhn46 xin cảm ơn.
 
Bạn có thể chỉ mình cách gửi tin lên Skype bằng Code được không ? --=0--=0--=0 nếu may mắn lỡ mình tìm được cách lấy nội dung Skype thì rất tốt phải không nào ? hi hi
 
Upvote 0
Bạn có thể tham khảo. Lần này được Chim Hồng quan tâm là hy vọng có giải pháp rồi -=.,,.

Mã:
Sub Skype_MessageTest()
    Dim oSkype As Object
    Dim oChat As Object
    Dim skUser As Object


    Set oSkype = CreateObject("SKYPE4COM.Skype")
    Set skUser = oSkype.user("Nick_Skype")
    Set oChat = oSkype.CreateChatWith(skUser.Handle)


    oChat.SendMessage "Test gui Excel len Skype"
End Sub
 
Upvote 0
Bạn có thể tham khảo. Lần này được Chim Hồng quan tâm là hy vọng có giải pháp rồi -=.,,.

Mã:
Sub Skype_MessageTest()
    Dim oSkype As Object
    Dim oChat As Object
    Dim skUser As Object


    Set oSkype = CreateObject("SKYPE4COM.Skype")
    Set skUser = oSkype.user("Nick_Skype")
    Set oChat = oSkype.CreateChatWith(skUser.Handle)


    oChat.SendMessage "Test gui Excel len Skype"
End Sub

thật buồn khi mình nghe nói điều này trên diễn đàn nước ngoài

Skype4COM.dll is a 32-bit COM dll which means that you cannot load it from 64-bit Excel

có bạn nào xài máy 64 bit chạy được code ở trên không ta ?
 
Upvote 0

File đính kèm

  • Capture.jpg
    Capture.jpg
    23.7 KB · Đọc: 88
Upvote 0
Upvote 0
dhn46 cũng đã tìm hiểu và có cách đưa dữ liệu từ Skype vào Excel nhưng tốc độ chậm không đảm bảo.

dhn46 làm tạm 1 file các anh chị tham khảo và góp ý cho giải pháp tốt hơn.

Trong File đã có code đưa dữ liệu lên Skype và lấy dữ liệu từ Skype xuống.

Xin cảm ơn!
 

File đính kèm

  • Skype to Excel.xlsm
    173.5 KB · Đọc: 79
Upvote 0
dhn46 cũng đã tìm hiểu và có cách đưa dữ liệu từ Skype vào Excel nhưng tốc độ chậm không đảm bảo.

dhn46 làm tạm 1 file các anh chị tham khảo và góp ý cho giải pháp tốt hơn.

Trong File đã có code đưa dữ liệu lên Skype và lấy dữ liệu từ Skype xuống.

Xin cảm ơn!
Theo mình thì chỉ nên lấy dòng cuối cùng, đưa xuống bảng tính thôi. Lúc đó tốc độ sẽ được cải thiện.
 
Upvote 0
Theo mình thì chỉ nên lấy dòng cuối cùng, đưa xuống bảng tính thôi. Lúc đó tốc độ sẽ được cải thiện.
Em test thử tốc độ thì thời gian tốn nhất là lấy toàn bộ dữ liệu từ Skype đưa vào mảng. Còn thời gian trích lọc không tốn mấy so với cái truy vấn lấy Data (em mới chỉ biết cách lấy toàn bộ dữ liệu chứa tất cả các nội dung như thời gian, user, nội dung... rồi sau đó mới lọc theo user đang chat).

Hiện tại em chưa biết truy vấn dòng cuối cùng từ Skype theo user đang chat. Anh Hai Lúa Miền Tây và mọi người tư vấn cho em với nhé.

dhn46 xin cảm ơn!
 
Upvote 0
Em test thử tốc độ thì thời gian tốn nhất là lấy toàn bộ dữ liệu từ Skype đưa vào mảng. Còn thời gian trích lọc không tốn mấy so với cái truy vấn lấy Data (em mới chỉ biết cách lấy toàn bộ dữ liệu chứa tất cả các nội dung như thời gian, user, nội dung... rồi sau đó mới lọc theo user đang chat).

Hiện tại em chưa biết truy vấn dòng cuối cùng từ Skype theo user đang chat. Anh Hai Lúa Miền Tâyvà mọi người tư vấn cho em với nhé.

dhn46 xin cảm ơn!
Dựa vào file của dhn46 mình chạy code sau để lấy dòng cuối cùng của nội dung chat theo user:

Mã:
Sub test1()

    Dim oSkype As Object
    Dim oChat As Object
    Dim skUser As Object
    Set oSkype = CreateObject("SKYPE4COM.Skype")
    Set skUser = oSkype.User(Sheets("Skype").[B2])
    Set oChat = oSkype.CreateChatWith(skUser.Handle)
    With Sheets("Skype")
        .[A7] = oChat.Timestamp
        .[B7] = oChat.FriendlyName
        .[C7] = oChat.Messages.Item(1).Body
    End With
    
End Sub



 
Upvote 0
Dựa vào file của dhn46 mình chạy code sau để lấy dòng cuối cùng của nội dung chat theo user:

Mã:
Sub test1()

    Dim oSkype As Object
    Dim oChat As Object
    Dim skUser As Object
    Set oSkype = CreateObject("SKYPE4COM.Skype")
    Set skUser = oSkype.User(Sheets("Skype").[B2])
    Set oChat = oSkype.CreateChatWith(skUser.Handle)
    With Sheets("Skype")
        .[A7] = oChat.Timestamp
        .[B7] = oChat.FriendlyName
        .[C7] = oChat.Messages.Item(1).Body
    End With
    
End Sub




Hay quá anh ạ. Tuyệt quá. Em cảm ơn anh nhiều.
 
Upvote 0
Dựa vào file của dhn46 mình chạy code sau để lấy dòng cuối cùng của nội dung chat theo user:

Mã:
Sub test1()

    Dim oSkype As Object
    Dim oChat As Object
    Dim skUser As Object
    Set oSkype = CreateObject("SKYPE4COM.Skype")
    Set skUser = oSkype.User(Sheets("Skype").[B2])
    Set oChat = oSkype.CreateChatWith(skUser.Handle)
    With Sheets("Skype")
        .[A7] = oChat.Timestamp
        .[B7] = oChat.FriendlyName
        .[C7] = oChat.Messages.Item(1).Body
    End With
    
End Sub



Mình mới thử test thấy nhanh đó nhưng sao lỗi dòng sau hay máy mình làm sao
.[C7] = oChat.Messages.Item(1).Body
 
Upvote 0
Mình mới thử test thấy nhanh đó nhưng sao lỗi dòng sau hay máy mình làm sao
.[C7] = oChat.Messages.Item(1).Body
Bạn kiểm tra lại cài đặt Skype có cho phép Excel truy cập không? Nếu bạn chặn có thể đó là 1 nguyên nhân chăng.

dhn46 dùng Win 7 64 bit code chạy bình thường. Thậm chí máy còn khóa admin và chặn một số tính năng vẫn không bị lỗi.
 
Upvote 0
Bạn kiểm tra lại cài đặt Skype có cho phép Excel truy cập không? Nếu bạn chặn có thể đó là 1 nguyên nhân chăng.

dhn46 dùng Win 7 64 bit code chạy bình thường. Thậm chí máy còn khóa admin và chặn một số tính năng vẫn không bị lỗi.
Mạnh thử code trên file của bạn vẫn chạy tốt mà ... nhưng chậm thôi

nếu bỏ dòng đó chạy rất nhanh
 
Lần chỉnh sửa cuối:
Upvote 0
1675734677356.png
Mình bị lỗi ở dòng này. Mong được giúp đỡ ạ.
 
Upvote 0
Web KT

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

Back
Top Bottom