Getting mad at different CMD / Batch behaviour

I have these commands:

MOVE "C:\Users\Pascal\Dropbox\Public\U_PC_Backup\Anki Flashcards\[portable]Cameo_App_Virtualization\0backup\Cards_only\Card_Backup\" "C:\Users\Pascal\Dropbox\Public\U_PC_Backup\Anki Flashcards\[portable]Cameo_App_Virtualization\0backup\Cards_only\Card_Backup_%date%\"
xxcopy /E /Y "C:\Users\Pascal\Dropbox\Public\U_PC_Backup\Anki Flashcards\[portable]Cameo_App_Virtualization\0backup\Cards_only\Card_Backup\" "C:\Users\Pascal\Dropbox\Public\U_PC_Backup\Anki Flashcards\[portable]Cameo_App_Virtualization\Anki.virtual.data\VOS\Anki\%Personal%\Anki\" /PB 
MOVE "C:\Ankiback\Anki" "C:\Users\Pascal\Dropbox\Public\U_PC_Backup\Anki Flashcards\[portable]Cameo_App_Virtualization\0backup\Cards_only\Card_Backup"

When launched directly from the Commandline they behave as I need them too.

However inside a batch file, the first outputs:

The file cannot be found

The second outputs:

Directories Processed = 51
Total Data in Bytes   = 97.037.744
Elapsed time in sec.  = 2.453
Action speed (MB/min) = 2.373
Files Copied          = 508
Exit code             = 0 (No error, Successful operation)

The third outputs:

The File cannot be found.
The File cannot be found

Variables behave differently in a batch file, you may need %% rather than %

Yes, however, not all commands have a % in them.

What is with those without one, why won't they work in bat ?