  
        this._onScrollMemoizer({
          callback: function callback(_ref7) {
-@@ -973,19 +1109,26 @@ var Grid = function (_React$PureComponent) {
+@@ -973,19 +1114,26 @@ var Grid = function (_React$PureComponent) {
                onScroll = _props7.onScroll,
                width = _props7.width;
  

+
+      if (scrollToColumn >= 0 && !this._hasScrolledToColumnTarget && scrollLeft + width <= totalColumnsWidth) {
+        const scrollRight = scrollLeft + width;
+        const targetColumn = instanceProps.columnSizeAndPositionManager.getSizeAndPositionOfCell(scrollToColumn);
+
+        let isVisible = false;
+        if (targetColumn.size <= width) {
+          const targetColumnRight = targetColumn.offset + targetColumn.size;
+          isVisible = (targetColumn.offset >= scrollLeft && targetColumnRight <= scrollRight);
+        } else {
+          isVisible = (targetColumn.offset >= scrollLeft && targetColumn.offset <= scrollRight);
+        }
+
+        if (isVisible) {
+          const maxScroll = totalColumnsWidth - width;
+          this._hasScrolledToColumnTarget = (scrollLeft >= maxScroll || targetColumn.offset === scrollLeft);
+        }
+      }
+      if (scrollToRow >= 0 && !this._hasScrolledToRowTarget && scrollTop + height <= totalRowsHeight) {
+        const scrollBottom = scrollTop + height;
+        const targetRow = instanceProps.rowSizeAndPositionManager.getSizeAndPositionOfCell(scrollToRow);
+        const maxScroll = totalRowsHeight - height;
+
+        // When scrolling to bottom row, we want to go all the way to the bottom
+        if (scrollToRow === rowCount - 1) {
+          this._hasScrolledToRowTarget = scrollTop >= maxScroll;
+        } else {
+          let isVisible = false;
+          if (targetRow.size <= height) {
+            const targetRowBottom = targetRow.offset + targetRow.size;
+            isVisible = (targetRow.offset >= scrollTop && targetRowBottom <= scrollBottom);

         });
       }
 
@@ -750,6 +881,7 @@ var Grid = function (_React$PureComponent) {
         }, containerProps, {
           'aria-label': this.props['aria-label'],
           'aria-readonly': this.props['aria-readonly'],
