Det er mange distribusjonsgrupper, og vi liker å få med alle medlemmene og eierne. Vi kan gå gjennom gruppene i Microsoft 365-administrasjonssenteret individuelt, men det tar mye tid. Så la oss automatisere oppgaven og eksportere en rapport med alle medlemmer, eiere og mer informasjon. I denne artikkelen lærer du hvordan du masseeksporterer Microsoft 365-distribusjonsgruppemedlemmer til CSV-fil med PowerShell-skript.
Finn Microsoft 365-distribusjonsgrupper
Følg disse trinnene for å finne alle distribusjonsgruppene i Microsoft 365:
- Logg påMicrosoft Exchange administrasjonssenter
- KlikkMottakere > Grupper
- Klikk pågruppetypefor å liste opp distribusjonsgruppene

La oss se på neste trinn for hvordan du eksporterer Microsoft 365-distribusjonsgruppemedlemmer med PowerShell.
Export-M365DGMembers.ps1 PowerShell vil hente alle Microsoft 365-distribusjonsgruppene, inkludert medlemmene deres, og eksportere dem til en CSV-fil.
For hver Microsoft 365-distribusjonsgruppe samler den inn følgende informasjon:
- Visningsnavn
- Beskrivelse
- PrimarySmtpAddress
- SecondarySmtpAddress
- Alias
- GroupType
- RecipientType
- Synkronisert Fra OnPremises
- Medlem
- MemberPrimarySmtpAddress
- MemberType
- Eiere
- HiddenFromAddressLists
- Medlemsbegrensning
- MemberDepartRestriction
- RequireSenderAuthenticationEnabled
- AcceptMessagesOnly From
- SendonBehalf
- sende
- Når opprettet
- Når Endret
Note:Ønsker du å få en liste over alle distribusjonsgruppemedlemmene i Exchange Server? Les artikkelen Eksporter distribusjonsgruppemedlemmer til CSV med PowerShell.
Foreslått å lese:Slik bruker du Export-CSV i PowerShell
1. Installer Exchange Online PowerShell-modulen
Før vi kan gå videre og få Microsoft 365-medlemmene og eierne fra alle distribusjonsgruppene, må vi installere Exchange Online PowerShell-modulen.
Start Windows PowerShell som administrator og kjør kommandoene nedenfor.
Install-Module -Name ExchangeOnlineManagement -Force2. Forbered PowerShell-skriptet Eksporter Microsoft 365-distribusjonsgruppemedlemmer
Opprett to mapper på(C:)kjøre:
- Temp
- Skript
Last ned Export-M365DGMembers.ps1 PowerShell-skriptet og plasser det iC:skriptmappe. Skriptet vil eksportere CSV-filen tilC:tempmappe.
Sørg for at filen er opphevet for å forhindre feil når du kjører skriptet. Les mer i artikkelen Ikke digitalt signert feil ved kjøring av PowerShell-skript.
Et annet alternativ er å kopiere og lime inn koden nedenfor i Notisblokk. Gi den navnetEksporter-M365DGMembers.ps1og plasser den iC:skriptmappe.
<#
.SYNOPSIS
Export-M365DGMembers.ps1
.DESCRIPTION
Export Microsoft 365 Distribution Group Members to CSV file with PowerShell.
.LINK
www.alitajran.com/export-microsoft-365-distribution-group-members-to-csv-powershell/
.NOTES
Written by: ALI TAJRAN
Website: www.alitajran.com
LinkedIn: linkedin.com/in/alitajran
.CHANGELOG
V1.00, 03/21/2024 - Initial version
V1.10, 04/20/2024 - Added MemberType property and report members on seperate row
#>
# CSV file export path
$Csvfile = "C:tempM365DGMembers.csv"
# Connect to Exchange Online PowerShell
Connect-ExchangeOnline
# Get all distribution groups
$Groups = Get-DistributionGroup -ResultSize Unlimited
# Initialize a List to store the data
$Report = [System.Collections.Generic.List[Object]]::new()
# Set up the progress bar parameters
$totalGroups = $Groups.Count
$currentGroup = 0
# Loop through distribution groups and store custom objects in the array
foreach ($Group in $Groups) {
# Update the progress bar
$currentGroup++
$status = "{0:N0}" -f ($currentGroup / $totalGroups * 100)
$progressParams = @{
Activity = "Retrieving Group Members"
Status = "Processing group: $($group.DisplayName) - $currentGroup of $totalGroups : $status% completed"
PercentComplete = ($currentGroup / $totalGroups) * 100
}
Write-Progress @progressParams
# Retrieve group properties
$Members = Get-DistributionGroupMember $Group.DistinguishedName -ResultSize Unlimited
$Owner = $Group.ManagedBy | ForEach-Object { (Get-Recipient $_ -ErrorAction SilentlyContinue).DisplayName }
$AcceptMessagesOnlyFromDisplayNames = $Group.AcceptMessagesOnlyFrom | ForEach-Object { (Get-Recipient $_).PrimarySmtpAddress }
$GrantSendOnBehalfToDisplayNames = $Group.GrantSendOnBehalfTo | ForEach-Object { (Get-User $_ -ErrorAction SilentlyContinue).DisplayName }
# Get SendAs permissions
$SendAsPermissions = Get-RecipientPermission -Identity $Group.PrimarySmtpAddress
$SendAsTrustees = $SendAsPermissions.Trustee
# Create custom objects for each member
foreach ($Member in $Members) {
$ReportLine = [PSCustomObject]@{
DisplayName = $Group.DisplayName
Description = $Group.Description
PrimarySmtpAddress = $Group.PrimarySmtpAddress
SecondarySmtpAddress = ($Group.EmailAddresses | Where-Object { $_ -clike "smtp*" } | ForEach-Object { $_ -replace "smtp:", "" }) -join ','
Alias = $Group.Alias
GroupType = $Group.GroupType
RecipientType = $Group.RecipientType
SyncedFromOnPremises = $Group.IsDirSynced
Member = $Member.DisplayName
MemberPrimarySmtpAddress = $Member.PrimarySmtpAddress
MemberType = $Member.RecipientType
Owners = $Owner -join ','
HiddenFromAddressLists = $Group.HiddenFromAddressListsEnabled
MemberJoinRestriction = $Group.MemberJoinRestriction
MemberDepartRestriction = $Group.MemberDepartRestriction
RequireSenderAuthenticationEnabled = $Group.RequireSenderAuthenticationEnabled
AcceptMessagesOnlyFrom = $AcceptMessagesOnlyFromDisplayNames -join ','
SendOnBehalf = $GrantSendOnBehalfToDisplayNames -join ','
SendAs = $SendAsTrustees -join ','
WhenCreated = $Group.WhenCreated
WhenChanged = $Group.WhenChanged
}
$Report.Add($ReportLine)
}
}
# Complete the progress bar
Write-Progress -Activity "Retrieving Group Members" -Completed
# Output the custom objects array, sort them, and display in a grid view
$Report | Sort-Object DisplayName | Out-GridView -Title "M365 Distribution Group Members"
# Export report to CSV file
$Report | Sort-Object DisplayName | Export-Csv -Path $Csvfile -NoTypeInformation -Encoding utf8- Linje 22:Rediger CSV-filbanen
3. Kjør PowerShell-skriptet Eksporter Microsoft 365 distribusjonsgruppemedlemmer
Få alle Microsoft 365-distribusjonsgruppene, inkludert deres medlemmer og eiere, og eksporter dem til en CSV-fil.
Kjør kommandoen nedenfor for å kjøre skriptet Export-M365DGMembers.ps1.
c:scripts.Export-M365DGMembers.ps14. Åpne Microsoft 365-rapporten for distribusjonsgruppemedlemmer
Export-M365DGMembers.ps1 PowerShell-skriptet eksporterer alle Microsoft 365-distribusjonsgruppemedlemmene til en CSV-fil.
Finn filenM365DGMembers.csvi stienC:temp.

Åpne CSV-filen med favorittappen din. I vårt eksempel er det Microsoft Excel.

Rapporten om Microsoft 365-distribusjonsgruppemedlemmer og eiere ser bra ut!
Konklusjon
Du lærte hvordan du eksporterer Microsoft 365-distribusjonsgruppemedlemmer til CSV med PowerShell. Eksporten i administrasjonssenteret gir deg ikke alle egenskapene du ønsker. Det er best å bruke PowerShell-skriptet fordi du kan tilpasse det til dine behov.
Likte du denne artikkelen? Du kan også like Eksporter Entra ID-appregistreringer Sertifikater og hemmeligheter utløpsrapport. Ikke glem å følge oss og dele denne artikkelen.













![[Fix] Kan ikke installere Windows 8.1 eller Server 2012 R2 i Oracle Virtual Box](https://media.askvg.com/articles/images5/Windows_8_1_VirtualBox_Install_Error.png)
