Your calculation has a lot of overcounting, whenever there is more than one vowel present.
If you really want to avoid (or, say, cross-check) the "negative space" method of simply excluding options with no vowels, you could perhaps sum through the possibilities of where the first vowel is:
- Vowel in first place: $5\cdot 26^7 $ ways
- First vowel in second place: $21\cdot 5\cdot 26^6 $ ways
- First vowel in third place: $21^2\cdot 5\cdot 26^5 $ ways
- etc.
Total
$$5\cdot 26^7 + 21\cdot 5\cdot 26^6 + 21^2\cdot 5\cdot 26^5 + 21^3\cdot 5\cdot 26^4 \\
\quad\quad+ 21^4\cdot 5\cdot 26^3 + 21^5\cdot 5\cdot 26^2 + 21^6\cdot 5\cdot 26 + 21^7\cdot 5 \\
= 5 \sum_{k=0}^7 21^k \,26^{7-k}$$
Not easy.
Another method is to calculate options for an exact number of vowels. This can be calculated by setting the pattern in one step, eg for three vowels:
$$BBABBAAB$$
which is ${8 \choose 3}$, then multiplying by the options for consonants and vowels respectively, so
$${8 \choose 3}5^3\,21^5$$
for exactly three vowels. Then add up all options of interest (or, if simpler, add up the non-qualifying options and subtract from total).