2

Excel VBA を使用して Skype メッセージを送信しようとしていますが、このコードが見つかりました

Sub Test()

Dim aSkype As SKYPE4COMLib.Skype
Set aSkype = New SKYPE4COMLib.Skype
Dim oChat As Chat
Dim skUser As SKYPE4COMLib.User
    Set skUser = aSkype.User("user_name")
    Set oChat = aSkype.CreateChatWith(skUser.Handle)
    oChat.OpenWindow
   oChat.SendMessage "automated message"

End Sub

それは完全に正常に機能しますが、単一の連絡先に対してのみ..私はこのコードも見つけました

msg.Chat.SendMessage("your message")

それはグループの連絡先にメッセージを送信することになっていますが、上記のコードに統合することはできません..それが可能であることを示唆するオンラインのリンクをいくつか見つけましたが、それらはすべてC#であり、VBAではありません..これは非常に感謝しています..

4

1 に答える 1

3

複数のユーザーを定義する必要があります。1 つの方法は、コレクションを使用することです。

Sub Test()    
  Dim aSkype As SKYPE4COMLib.Skype
  Set aSkype = New SKYPE4COMLib.Skype
  Dim oChat As Chat
  Dim skUser As SKYPE4COMLib.User

  Set oMembers = CreateObject("Skype4COM.UserCollection")
  oMembers.Add(oSkype.User("user_name1"))
  oMembers.Add(oSkype.User("user_name2"))

  Set oChat = oSkype.CreateChatMultiple(oMembers)       
  oChat.OpenWindow
  oChat.Topic = "Group Chat Topic"
  oChat.SendMessage "automated message"     
End Sub

これは、 Skypeの優れたリソースで、VBA の例がたくさんあります。マルチチャットについては、21 ページを参照してください。

于 2014-10-23T17:20:27.040 に答える