Help with AppleScript moving email messages
Solution 1:
It's better if you capture a reference to every message in a variable, instead of getting the reference every time you loop.
tell application "Mail"
set theWorkInbox to mailbox "Work Inbox" of account "Work"
set TargetInbox to mailbox "Work Holding Bay" of account "Work"
-- CAPTURE REFERENCE TO EVERY MESSAGE OF MAILBOX IN A VARIABLE
set EveryMessage to every message of TargetInbox
repeat with currentWorkMessage in EveryMessage
set mailbox of currentWorkMessage to theWorkInbox
end repeat
end tell