diff --git a/plugins/openoffice/openoffice-read.c b/plugins/openoffice/openoffice-read.c
index 4259598..ca31e9a 100644
--- a/plugins/openoffice/openoffice-read.c
+++ b/plugins/openoffice/openoffice-read.c
@@ -9127,6 +9127,27 @@ od_series_reg_equation (GsfXMLIn *xin, xmlChar const **attrs)
 }
 
 static void
+odf_store_data_expr (GsfXMLIn *xin, OOParseState *state, gchar const *str, GogObject *obj, int dim)
+{
+	if (str != NULL) {
+		GnmParsePos pp;
+		GOData *data;
+		GnmExprTop const *expr;
+		parse_pos_init (&pp, state->pos.wb, state->pos.sheet, 0, 0);
+		expr = oo_expr_parse_str
+			(xin, str, &pp,
+			 GNM_EXPR_PARSE_FORCE_EXPLICIT_SHEET_REFERENCES,
+			 FORMULA_OPENFORMULA);
+		if (expr != NULL) {
+			data = gnm_go_data_scalar_new_expr
+				(state->chart.src_sheet, expr);
+			gog_dataset_set_dim (GOG_DATASET (obj), dim,
+					     data, NULL);
+		}
+	}
+}
+
+static void
 odf_store_data (OOParseState *state, gchar const *str, GogObject *obj, int dim)
 {
 	if (str != NULL) {
@@ -9218,7 +9239,7 @@ od_series_regression (GsfXMLIn *xin, xmlChar const **attrs)
 				g_object_unref (style);
 			}
 
-			odf_store_data (state, name, regression, -1);
+			odf_store_data_expr (xin, state, name, regression, -1);
 			odf_store_data (state, lower_bd, regression, 0);
 			odf_store_data (state, upper_bd, regression, 1);
 		}
