Java Streams: Grouping to a Map
I'd format this code slightly differently:

return _formulaSheetSchema.column(columnName).get()
  .formula()
  .computeReferencedColums(getSheetName()).stream()
  .collect(groupingBy(ColumnRef::sheetName,
    LinkedHashMap::new,
    collectingAndThen(toSet(), set -&gt; set.stream()
      .map(ColumnRef::columnName).collect(toSet())));


Also the downstream operation you use here is wasteful, because it collects the set and then restreams it. Instead use the mapping collector:

  .collect(groupingBy(ColumnRef::sheetName,
    mapping(ColumnRef::columnName, toSet()));


Sidenote: I personally prefer using 2-space indents across the board, but this formatting works with 4-space indents just as well...

Additionally the _-prefix for instance variables is something I dislike, but so long as you're consistent about it, that should be fine.

I also dislike that you're not checking whether the column actually exists, before accessing it's formula.