Ну я если бы не нашел никаких стандартных средств реализовал бы это сам.
В событии onMouseDown(событие таблицы естественно) нужно запомнить адрес ячейки, на которую кликнули. В событии OnMouseUp запоминаем ячейку, на которой отпустили кнопку мыши. Можно сделать что подкрашивалось выделяемое, но с прорисовкой будут проблемы и думаю не стоит ради это двойную буферезацию делать), а проще выделить это все после выделения. Короче у тебя уже есть две ячейки. Теперь надо пройтись в цикле по ячейкам слева на право или наоборот, для этого нужно определить где в таблице находится первая ячейка (раньше или позже второй) теперь в цилке ты закрашиваешь ячейки допустим серым цветом(true - темным оттенком, false - светлым) и сохроняешь данные в массив, если ты вырезаешь, то одновременно с этим очищаешь ячейки. Видишь как легко) код я писать не буду
