diff --git a/EPPlus/ExcelWorksheet.cs b/EPPlus/ExcelWorksheet.cs
index 995febe..a88aa33 100644
--- a/EPPlus/ExcelWorksheet.cs
+++ b/EPPlus/ExcelWorksheet.cs
@@ -1,4 +1,4 @@
-/*******************************************************************************
+  /*******************************************************************************
  * You may amend and distribute as you like, but don't remove this header!
  *
  * EPPlus provides server-side generation of Excel 2007/2010 spreadsheets.
@@ -1122,21 +1122,27 @@
                     {
                         var rId = xr.GetAttribute("id", ExcelPackage.schemaRelationships);
                         var uri = Part.GetRelationship(rId).TargetUri;
+
+                        // Get Location, if any.  EPPlus Bug 15517
+                        var location = xr.GetAttribute("location");
+                        location = (string.IsNullOrEmpty(location)) ? "" : "#" + location;
+
                         if (uri.IsAbsoluteUri)
                         {
                             try
                             {
-                                hl = new ExcelHyperLink(uri.AbsoluteUri);
+                                hl = new ExcelHyperLink(uri.AbsoluteUri + location);
                             }
                             catch
                             {
-                                hl = new ExcelHyperLink(uri.OriginalString, UriKind.Absolute);
+                                hl = new ExcelHyperLink(uri.OriginalString + location, UriKind.Absolute);
                             }
                         }
                         else
                         {
-                            hl = new ExcelHyperLink(uri.OriginalString, UriKind.Relative);
+                            hl = new ExcelHyperLink(uri.OriginalString + location, UriKind.Relative);
                         }
+
                         hl.RId = rId;
                         Part.DeleteRelationship(rId); //Delete the relationship, it is recreated when we save the package.
                     }
