in revealing cols OQ as in OP means columns O
to Q.
Being so, we would
copy revenues and its column nr side by side;
sort this pair by revenues;
copy blocks of data of each company by the column nr to next sheet
blocks of data of each company being
if revenue is in column Q (icol=17)
then data to copy are columns(icol -2 : icol)