Not to complicate too much, I suggest that you save *.xls or *.xlsx file to *.csv (comma separated value file) and then use (read-line) function to read each row of sheet which is separated by "," ";" or "\t" string after which you can sort columns values and create corresponding list of strings of complete sheet excel table... Then do your task you described, it shouldn't be to hard for you (I suppose you are not total begginger in lisp)...