I do this with concentric loops. The outer loop is sequential and specifies the rows to use in the inner loop which is random.