diff --git a/src/@dseries/subsref.m b/src/@dseries/subsref.m
index e6f129ae5eb9f7acb7373de2efb408d6dc0a1763..415d65a01396fec86b41400a9a13cc1c1456f65e 100644
--- a/src/@dseries/subsref.m
+++ b/src/@dseries/subsref.m
@@ -132,7 +132,8 @@ switch S(1).type
             'lineartrend', ...
             'resetops', 'resettags', ...
             'subsample', ...
-            'projection'}
+            'projection', ...
+            'timeaggregation'}
         if length(S)>1 && isequal(S(2).type,'()')
             if isempty(S(2).subs)
                 r = feval(S(1).subs,o);
@@ -219,7 +220,11 @@ switch S(1).type
             error(['dseries::subsref: Indices are out of bounds! Subsample cannot end after ' date2string(o.dates(end)) '.'])
         end
         % Extract a subsample using a dates object
-        [~,tdx] = intersect(o.dates.time,Dates.time,'rows');
+        if o.dates.freq==365
+            [~,tdx] = intersect(o.dates.time(:,1),Dates.time(:,1));
+        else
+            [~,tdx] = intersect(o.dates.time,Dates.time,'rows');
+        end
         r = copy(o);
         r.data = r.data(tdx,:);
         r.dates = r.dates(tdx);