You can try a couple of things. There aren’t any guarantees, because the remesh is always going to be different from the high poly. But you can try things out and see if they’re good enough for you.
The first thing to try is to copy weights from the remesh to the high poly. I’d do this with a data transfer modifier, set to copy vertex data, vertex groups, on the basis of nearest face interpolated, with the remesh in rest position. Don’t forget to hit “generate data layers”. Consider applying the modiifer. There are a lot of ways that people screw this up, so it’s wise to spend some time reading the manual and understanding what you’re doing; I’m usually happy to help, but for failures in implementation, I usually need a file, and files with high polys are big, and I sometimes need more detailed information about the process is being used than can be provided by people who are still not sure what they’re doing. This is an alternate way to get weights on your high poly, after which you’d still need to parent with armature deform, but just straight armature deform, not armature deform with automatic weights.
Another thing you can try is just scaling your armature and mesh up, and applying scale, then autoweighting your high poly. I suspect that autoweight failure on high vert density meshes is related to precision issues with Blender’s autoweights (that shouldn’t exist, but they do, and we work with what we have), and doing this at a larger world scale may help you beat the autoweights failure. After you’ve got the scale to get autoweights working, you can restore scale any way that you want, but if you have trouble, ask.
A third option here is to skip the armature and use a surface deform or mesh deform. A surface deform is a little easier to use: you put both meshes in the original shape, then you give the high poly a surface deform modifier targeting the low poly and hit the bind button. The bind button is not guaranteed to work, but putting a triangulate modifier on the high and low, before the surface deform in the case of the high, preferably on “fixed” triangulate mode, improves your odds considerably. After that, you pose the low poly, and see if it’s what you want. A mesh deform is slightly better (definitely easier to bind), but it depends on the low poly completely enclosing the high poly. There are things you can do to make that happen, but this is already a longer post than you’d like to read…
But, like I said, there’s no guarantee that any of those will be good enough for you. There is some data lost on any low poly. For a 3D print, it might be worthwhile to use those techniques, apply any modifiers on the high poly, then make additional tweaks in sculpt.