Most of us familiar with the regular MMC or cmdlet for moving exchange 2007 mailbox within the same organization. Using MMC it’s the most common and intuitive way as the exchange admin can view users and mailbox stores using the great GUI tool of exchange manager.
But what if we want to move mailbox to a server that located in a different organization on which we have message routing policy with? MMC will not cover this area as it can view only exchange servers located within the same organization or "domain forest" using Active directory meanings.
First we have to know that if our mailbox located under exchange 2007 server\store and we want to move it to another organization, it will not work with exchange servers older than exchange 2003.
1.The first step is authenticating against the other exchange server using the Get-Credential command as follow:
Open the exchange power shell and authenticate against your local server using: $SourceAdmin = Get-Credential < put your user and password using domain\user method and approve.
Authenticate against the destination server using: $TargetAdmin = Get-Credential < put your user and password using domain\user method and approve.

2.Moving the requested mail include the command first and then the "explanation" of source and target servers and DC and credentials:
move-mailbox "RequsetdMailbox" -TargetDatabase "RequestedTargetDatabase" -SourceForestGlobalCatalog "Tomove.Gmalaya.com" -GlobalCatalog "Ex2007.gmalaya.com" -DomainController "Win2008DC.gmalaya.com" -NTAccountOU "OU=MovingUsers, DC=Gmalaya,DC=COM" -SourceForestCredential $SourceAdmin -TargetForestCredential $TargetAdmin

3.It’s recommended to pipe this command the get-mailbox command that will pick all requested mailbox from source server and move all mailboxes at once. It’s even better to centralized all mailboxes under a single store and make the transfer.