Project

PSWriteOffice

PowerShell document automation across Word, Excel, PowerPoint, PDF, Reader, Confluence, Visio, and open text formats.

Stars 159
Forks 14
PowerShell Gallery downloads 158,661
Release v3.0.5
Language: C# Updated: 2026-09-03

API Reference

Cmdlet

Save-OfficeEmail

Namespace PSWriteOffice
Inputs
OfficeIMO.Email.EmailDocument
Outputs
OfficeIMO.Email.EmailWriteResult

Saves an email document as EML, EMLX, MSG, or TNEF with fidelity diagnostics.

Remarks

Saves an email document as EML, EMLX, MSG, or TNEF with fidelity diagnostics.

Examples

Authored help example

Save a message with an explicit loss policy.

PS>


$options = New-OfficeEmailWriterOptions -ConversionLossPolicy Block
            $message | Save-OfficeEmail -Path .\Message.eml -Options $options -PassThru
        

Common Parameters

This command supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable.

For more information, see about_CommonParameters.

Syntax

Save-OfficeEmail -Document <EmailDocument> [-Format <Unknown>] [-Options <EmailWriterOptions>] [-PassThru] -Path <String> [<CommonParameters>]
#
Parameter set: All Parameter Sets

Parameters

Document EmailDocument requiredposition: namedpipeline: True (ByValue)
Email document to save.
Format EmailFileFormat optionalposition: namedpipeline: Falsevalues: 7
Optional explicit output format. By default it is inferred from the filename.
Possible values: Unknown, Eml, OutlookMsg, Tnef, Mbox, OutlookTemplate, Emlx
Options EmailWriterOptions optionalposition: namedpipeline: False
Optional preservation, projection, encoding, and output limits.
PassThru SwitchParameter optionalposition: namedpipeline: False
Emit the object created or changed by the command.
Path String requiredposition: 0pipeline: False
Destination path.

Outputs

OfficeIMO.Email.EmailWriteResult