diff --git a/ClosedXML/Excel/Cells/XLCell.cs b/ClosedXML/Excel/Cells/XLCell.cs index 799b137..ff402de 100644 --- a/ClosedXML/Excel/Cells/XLCell.cs +++ b/ClosedXML/Excel/Cells/XLCell.cs @@ -1080,6 +1080,8 @@ set { _formulaR1C1 = String.IsNullOrWhiteSpace(value) ? null : value; + + _formulaA1 = null; } } diff --git a/ClosedXML_Tests/Excel/Cells/XLCellTests.cs b/ClosedXML_Tests/Excel/Cells/XLCellTests.cs index 4f1180d..754d158 100644 --- a/ClosedXML_Tests/Excel/Cells/XLCellTests.cs +++ b/ClosedXML_Tests/Excel/Cells/XLCellTests.cs @@ -546,5 +546,35 @@ Assert.AreEqual(0, c3); } } + + [Test] + public void SetFormulaA1AffectsR1C1() + { + using (var wb = new XLWorkbook()) + { + var ws = wb.AddWorksheet("Sheet1"); + var cell = ws.Cell(1, 1); + cell.FormulaR1C1 = "R[1]C"; + + cell.FormulaA1 = "B2"; + + Assert.AreEqual("R[1]C[1]", cell.FormulaR1C1); + } + } + + [Test] + public void SetFormulaR1C1AffectsA1() + { + using (var wb = new XLWorkbook()) + { + var ws = wb.AddWorksheet("Sheet1"); + var cell = ws.Cell(1, 1); + cell.FormulaA1 = "A2"; + + cell.FormulaR1C1 = "R[1]C[1]"; + + Assert.AreEqual("B2", cell.FormulaA1); + } + } } }