Vanilla Emacs has query-replace and related commands, that stop successively at each match for your search pattern and ask whether you want to replace it, then move on to the next match. When the region is active then these commands limit searching to the region.
You can always narrow the buffer (C-x n n) to the region, and then use ordinary Isearch.
If you ...
The documentation says that org-file-apps should be a list of cons cells but you have supplied a single cell instead. Solution: one more set of parens:
(setq org-file-apps '(("\\.xlsx\\'" . "excel %s")))
You now have a list containing a single cons cell and org-file-apps should be happy.
There's a customizable variable you can set: which-key-max-description-length
Setting it to nil will prevent it from truncating.
From the describe-variable output:
Truncate the description of keys to this length.
Also adds "..". If nil, disable any truncation.
(setq which-key-max-description-length nil)