Easiest is to use a function that removes item from table when used. Also, unless I'm misunderstanding what you are trying to do, you need as many x and y values as you have text boxes. So try this:
local x = {100, 200, 300, 400, 500} -- five text boxes
local y = {100, 200, 300, 400, 500} -- five text boxes
local function randomExtract(tbl)
if #tbl > 0 then
local index = math.random(#tbl)
return table.remove(tbl, index)
end
end
ui.addTextArea(1, "<br/>...</p>", randomExtract(x), randomExtract(y))
ui.addTextArea(2, "<br/>...</p>", randomExtract(x), randomExtract(y))
...
ui.addTextArea(5, "<br/>...</p>", randomExtract(x), randomExtract(y))