Вы можете легко использовать функцию поиска, уже присутствующую в примере Handsontable документации для первой части проблемы.
Затем вам нужно добавить поле, в которое вы можете поместить значение, которое хотите заменить, в ячейки, которые были сопоставлены, и использовать приведенную ниже простую функцию, чтобы заменить эти значения новыми:
Handsontable.dom.addEvent(Replace, 'click', function() {
// Replace the value of every cell that have been match by the search query
for (row = 0, r_len = queryResult.length; row < r_len; row++) {
hot.setDataAtCell(queryResult[row].row, queryResult[row].col, replace);
}
// Reset all the fields
SearchField="";
ReplaceField="";
queryResult="";
document.getElementById('Search').value='';
document.getElementById('ReplaceWith').value='';
});
См. Этот рабочий jsFiddle пример.