Create region/limits for NMinimize from list

NMinimize can accept a region to optimize over. I’m looking to create an expression that represents a region from a list of limits e.g.

limits = {{500, 5000}, {1000, 4000}, {1000, 10000}, {1000, 50000}}; 

Output:

{500<t[1]<5000 && 1000<t[2]< 4000 && 1000<t[3]<10000 && 1000<t[4]<500000} 

However, I can’t do it from the list, this is the best I can do

variables = Table[t[i], {i, Length[taus]}]; limits = {{500, 5000}, {1000, 4000}, {1000, 10000}, {1000, 50000}};  limits = Flatten[   Table[{limits[[i, 1]] < variables[[i]] < limits[[i, 2]] "&&"}, {i,      1, Length[variables], 1}]]  (* Output is wrong: {500 < t[1] < 5000 "&&", 1000 < t[2] < 4000 "&&",   1000 < t[3] < 10000 "&&", 1000 < t[4] < 50000 "&&"} *)