Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用matlab向outlook添加联系人_Matlab_Outlook_Contacts - Fatal编程技术网

使用matlab向outlook添加联系人

使用matlab向outlook添加联系人,matlab,outlook,contacts,Matlab,Outlook,Contacts,我有一个包含大量电子邮件的.xls文件,我想通过matlab将其添加到outlook中。处理.xls文件没有问题 我发现使用matlab发送邮件是可能的 h=actxserver('outlook.Application'),我想我可以将其用于我的目的。但是我对ActiveX/COM接口以及如何使用它完全不熟悉 我试图使用get(h),但这并没有给我任何有用的信息 两个问题。具体来说1)如何使用Matlab添加联系人 第二,更一般地说,在这种情况下,我怎样才能找出我能用“h”做什么?我看到人们使

我有一个包含大量电子邮件的.xls文件,我想通过matlab将其添加到outlook中。处理.xls文件没有问题

我发现使用matlab发送邮件是可能的
h=actxserver('outlook.Application'
),我想我可以将其用于我的目的。但是我对ActiveX/COM接口以及如何使用它完全不熟悉

我试图使用get(h),但这并没有给我任何有用的信息

两个问题。具体来说1)如何使用Matlab添加联系人


第二,更一般地说,在这种情况下,我怎样才能找出我能用“h”做什么?我看到人们使用
h.Subject
h.To
我怎样才能找到我可以用h做的事情(比如Subject或To)

我仍然建议您使用outlook发送电子邮件,这样您就拥有了所有最新的功能,而且MS正在不断更新office 365,这不是第一次微软更新将MS界面搞砸了

在任何情况下,您都是对的,有一个活动的X接口可以使用,在使用它之前,您必须使用管理员权限(如果您在windows上)运行matlab,并确保您有一个matlab版本>2010 rb(我正在测试的版本)

如果您使用的是h=actxserver('outlook.Application'),那么这只会创建一个具有给定应用程序ID的OLE服务器,因此get()将不会获取除版本号和服务器ID等以外的任何内容。但是,它应该允许您调用属于该服务器的函数(即outlook.Application的功能,因此一般而言,发送电子邮件:

mail = h.CreateItem('olMail');
mail.Subject = subject;
mail.To = to;
mail.BodyFormat = 'olFormatHTML';
mail.HTMLBody = body;
% Add attachments, if specified.
 if nargin == 4
    for i = 1:length(attachments)
        mail.attachments.Add(attachments{i});
    end
 end
 % Send message and release object.
mail.Send;
h.release;
请注意,上面的代码取自,我没有编写它们,可能永远也不会尝试……但它已经在我的本地电台上进行了测试

要回答第二个问题,您可以调用哪些函数取决于outlook.Application中的可用函数,这是从中可用的,这些函数都是您可以从对象调用的函数


还要注意的是,所有参数都是通过OLE以字符串的形式传递给对象的,因此这里没有Matlab功能,您不能在对象调用中使用任何Matlab功能,如果您想做一些聪明的事情,您需要将VB语言以字符串的形式传递给对象。

要添加联系人,您需要创建一个thro使用ActiveX控件:

h = actxserver('outlook.Application');

newContact = h.CreateItem('olContactItem');
newContact.FirstName = 'John';
newContact.LastName = 'Smith';
newContact.Email1Address = 'john.smith@email.email';
newContact.Save();

% newContact.Display;  % To check your work
h.release;  % Close the ActiveX interface
有关可以修改的其他字段的列表,请参见


对于一般的问题,只需要在

中进行一些探索,这一定是我见过的最奇怪的问题之一。如果你有一个包含电子邮件的.xls文件,为什么不直接使用outlook,matlab提供了outlook提供的哪些功能,而其他outlook不提供?对,好问题。这个.xls文件直接来自人力资源,需要很多我问这个问题是因为我想学习如何通过Matlab实现这一点。这已经帮了我很多。有没有办法设置它需要进入的地址组?我在Outlook上自动登录到两个电子邮件帐户。我要求将联系人添加到一个特定的电子邮件帐户,最好是一个特定的联系人组。对不起,我不确定。您可以使用
h.CreateItem('oldDistributionListItem');
创建一个新的联系人组,但我似乎无法解决如何实际添加联系人,而不会出现MATLAB错误,并显示一条非常无用的消息。