diff --git a/lisp/org-table.el b/lisp/org-table.el
index 49c59e3..17327af 100644
--- a/lisp/org-table.el
+++ b/lisp/org-table.el
@@ -817,7 +817,7 @@ Optional argument NEW may specify text to replace the current field content."
 	    (progn
 	      (setq s (match-string 1)
 		    o (match-string 0)
-		    l (max 1 (- (match-end 0) (match-beginning 0) 3))
+		    l (max 1 (- (string-width o) 3))
 		    e (not (= (match-beginning 2) (match-end 2))))
 	      (setq f (format (if num " %%%ds %s" " %%-%ds %s")
 			      l (if e "|" (setq org-table-may-need-update t) ""))
