Let's rearrange so that $a_1\ge a_2\ge a_3\ge \ldots$. Then this works if and only if $a_n\le \sum_{k>n}a_k$ for all $n\ge 1$.
To see this, let me also rephrase the problem as: Can we obtain all $0\le
S\le \sum_{n\ge 1} a_n$ as sums $\sum\delta_n a_n$, with $\delta_n=0,1$?
Clearly the condition is necessary, because if $a_N>\sum_{k>N} a_k$, then we won't be able to reach $S\in (\sum_{k>N}a_k,a_N)$.
On the other hand, with the condition assumed, we reach any $S$ by the obvious procedure: Starting with $n=1$ and increasing $n$, make $\delta_n=1$ unless that makes the partial sum $\sum_{k=1}^n \delta_ka_k$ too large; in that case, set $\delta_n=0$.