I’m pretty sure this can be done, but it might take a bit of work. The basic topic–drag & drop of repeater items–has been asked before, over the years, resulting in several solutions. The best I’ve seen use a kind of “ghost item” like a hidden dynamic panel which is shown during the drag to mimic the repeater content being “picked up and moved” …while the actual “copy” or “cut”, and then “paste” is done with repeater actions like Update Rows, Delete Rows, Add Filter, etc.
Take a look at this thread with a great solution and great explanation of how it works.
I’m not sure if I’ve seen a post asking to drag multiple rows at the same time, but I think the same basic approach would still work. Your ghost object could show that multiple items are being dragged together …maybe they appear stacked with only the first or last item actually shown, or maybe it just indicates the number of items selected without the “row content”. Then, at the drop, you could “tickle” the first repeater by calling a “listener event” (something otherwise unused like Move or Rotate) of a widget in the repeater. It would have a conditional case testing if that row is selected, and if so add a row in the second repeater with all of it’s datasheet content, and then either delete itself, or mark itself as “already copied”. Or, you could apply an action from the drop event to delete or filter out, or update all selected rows of the first repeater.