diff --git a/src/@dseries/horzcat.m b/src/@dseries/horzcat.m
index 5722922b32879feac758b930b8b336ccb72f266f..7870be421b8c5f4aa531b4d2940a51a6a11bfc81 100644
--- a/src/@dseries/horzcat.m
+++ b/src/@dseries/horzcat.m
@@ -97,8 +97,23 @@ function a = concatenate(b,c)
         elseif b_last_date>c_last_date
             c.data = [c.data; NaN(b_last_date-c_last_date, vobs(c))];
         end
+
+        fillerdates = dates();
+        if max(c.dates) < min(b.dates)
+            fillerdates = max(c.dates):min(b.dates);
+        end
+        if max(b.dates) < min(c.dates)
+            fillerdates = max(b.dates):min(c.dates);
+        end
+
+        if isempty(fillerdates)
+            hd = [b.dates, c.dates];
+        else
+            hd = [b.dates, fillerdates, c.dates];
+        end
+
         a.data = [b.data, c.data];
-        a.dates = sort(unique([b.dates, c.dates]));
+        a.dates = sort(unique(hd));
     end
 
 %@test:1