The map has to be shown at least once before you can move it. The SetUserPlaced probably won’t work as the map is Load on Demand.
A small addon to move the map when it loads would probably be your best bet if the macro is too much hassle.
You could paste the following into the website addon.bool.no
to create/downoad said addon.
local f = CreateFrame("Frame")
f:RegisterEvent("ADDON_LOADED")
f:SetScript("OnEvent", function(self, event, addon)
if addon == "Blizzard_BattlefieldMap" then
self:UnregisterAllEvents()
hooksecurefunc(BattlefieldMapTab, "SetPoint", function(self)
if self.OnHook then
self.OnHook = nil
return
end
self.OnHook = true
self:ClearAllPoints()
self:SetPoint("CENTER", UIParent, -200, 200)
end)
end
end)
Adjust the -200, 200 (X, Y) to move the frame relative to the center of the screen.