Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/13.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
powershell-如何发送包含从excel读取的内容的outlook邮件(csv)_Excel_Powershell_Email - Fatal编程技术网

powershell-如何发送包含从excel读取的内容的outlook邮件(csv)

powershell-如何发送包含从excel读取的内容的outlook邮件(csv),excel,powershell,email,Excel,Powershell,Email,有谁能给我举个例子,告诉我如何发送outlook邮件,其中包含从excel(csv)读取的内容 它似乎适用于txt,但不适用于excel $o = New-Object -com Outlook.Application $mail = $o.CreateItem(0) $yesterday = (get-date).AddDays(-1).ToString('MMM dd, yyyy') $mail.subject = "Missing/Empty Files" $mail.Attachme

有谁能给我举个例子,告诉我如何发送outlook邮件,其中包含从excel(csv)读取的内容

它似乎适用于txt,但不适用于excel

$o = New-Object -com Outlook.Application
$mail = $o.CreateItem(0)
$yesterday = (get-date).AddDays(-1).ToString('MMM dd, yyyy')

$mail.subject = "Missing/Empty Files"

$mail.Attachments.Add("I:\BadFileReport_20170711_0103.csv")

$mail.HTMLBody += "<span style='font-family:Courier New;font-size:12pt'>"  

$mail.HTMLbody = $mail.HTMLBody + "<B>Please check missing/empty files for yesterday</B><br><br>" 

$file1 = import-csv I:\BadFileReport_20170711_0103.csv


foreach ($line in $file1)
{
    $mail.HTMLbody = $mail.HTMLbody  + $line   
}

$mail.HTMLbody = $mail.HTMLbody + $title2 + "<br>"




$signature = "<br>Regards,<br>"

$mail.HTMLbody = $mail.HTMLbody + $signature



$mail.To = "12345@imcnam.ssmb.com"

write-host "mail sent"

$mail.save()
$o=新对象-com Outlook.Application
$mail=$o.CreateItem(0)
$Dayed=(get date).AddDays(-1).ToString('mmmdd,yyyy'))
$mail.subject=“缺少/空文件”
$mail.Attachments.Add(“I:\BadFileReport\u 20170711\u 0103.csv”)
$mail.HTMLBody+=“”
$mail.HTMLbody=$mail.HTMLbody+“请检查昨天丢失/空的文件

” $file1=导入csv I:\BadFileReport\u 20170711\u 0103.csv foreach($file1中的行) { $mail.HTMLbody=$mail.HTMLbody+$line } $mail.HTMLbody=$mail.HTMLbody+$title2+“
” $signature=“
问候,
” $mail.HTMLbody=$mail.HTMLbody+$signature $mail.To=”12345@imcnam.ssmb.com" 写入主机“已发送邮件” $mail.save()
输出如下所示:


导入CSV文件后,现在只需使用
转换为HTML
cmdlet即可使其对Outlook友好

$o = New-Object -com Outlook.Application
$mail = $o.CreateItem(0)
$yesterday = (get-date).AddDays(-1).ToString('MMM dd, yyyy')

$mail.subject = "Missing/Empty Files"

$mail.Attachments.Add("I:\BadFileReport_20170711_0103.csv")

$mail.HTMLBody += "<span style='font-family:Courier New;font-size:12pt'>"  

$mail.HTMLbody = $mail.HTMLBody + "<B>Please check missing/empty files for yesterday</B><br><br>" 

$mail.HTMLbody = $mail.HTMLBody + = import-csv I:\BadFileReport_20170711_0103.csv | ConvertTo-HTML -as Table -Property * -Fragment

$signature = "<br>Regards,<br>"

$mail.HTMLbody = $mail.HTMLbody + $signature

$mail.To = "12345@imcnam.ssmb.com"

write-host "mail sent"

$mail.save()
$o=新对象-com Outlook.Application
$mail=$o.CreateItem(0)
$Dayed=(get date).AddDays(-1).ToString('mmmdd,yyyy'))
$mail.subject=“缺少/空文件”
$mail.Attachments.Add(“I:\BadFileReport\u 20170711\u 0103.csv”)
$mail.HTMLBody+=“”
$mail.HTMLbody=$mail.HTMLbody+“请检查昨天丢失/空的文件

” $mail.HTMLbody=$mail.HTMLbody+=导入csv I:\BadFileReport_20170711_0103.csv |转换为HTML-作为表-属性*-片段 $signature=“
问候,
” $mail.HTMLbody=$mail.HTMLbody+$signature $mail.To=”12345@imcnam.ssmb.com" 写入主机“已发送邮件” $mail.save()
谢谢,它工作得很好。我想知道为什么我在谷歌搜索时找不到这个简单的命令。