       (save-excursion
 	(if ledger-fold-on-reconcile
 	    (ledger-occur-mode account ledger-buf)))
-      (ledger-reconcile-refresh)
-      (goto-char (point-min))
-      (ledger-reconcile-change-target)
+      (if (> (ledger-reconcile-refresh) 0)
+	  (ledger-reconcile-change-target))
       (ledger-display-balance))))
 
 (defvar ledger-reconcile-mode-abbrev-table)

	 (nth 0 posting))))) ;; return line-no of posting

(defun ledger-do-reconcile ()
  "Get the uncleared transactions in the account and display them in the *Reconcile* buffer."
  (let* ((buf ledger-buf)
         (account ledger-acct)
	 (ledger-success nil)

    (set-buffer-modified-p nil)
    (toggle-read-only t)

    (ledger-reconcile-ensure-xacts-visible)
    (length xacts)))

(defun ledger-reconcile-ensure-xacts-visible ()
  "Ensures that the last of the visible transactions in the
