diff --git a/matlab/@dseries/subsref.m b/matlab/@dseries/subsref.m
index d54445811f0bed31aa9f01332a6a21d88341722a..8b195a2ac6158223bef0072e502e1e4c9c61cade 100644
--- a/matlab/@dseries/subsref.m
+++ b/matlab/@dseries/subsref.m
@@ -203,9 +203,14 @@ switch S(1).type
             % Do nothing.
             B = A;
         end
-    elseif isdates(S(1).subs{1})
+    elseif isdates(S(1).subs{1}) || isdate(S(1).subs{1})
+        if isdate(S(1).subs{1})
+            Dates = dates(S(1).subs{1});
+        else
+            Dates = S(1).subs{1};
+        end
         % Extract a subsample using a dates object
-        [junk,tdx] = intersect(A.dates.time,S(1).subs{1}.time,'rows');
+        [junk,tdx] = intersect(A.dates.time,Dates.time,'rows');
         B = dseries();
         B.data = A.data(tdx,:);
         B.name = A.name;