Die Antwort ist ja, und das Folgende ist ein Existenzbeweis (und nicht die eleganteste Möglichkeit).
\documentclass{article}
\usepackage[margin=1in]{geometry}
\usepackage{pgffor}
\newcounter{mystep}
\newcounter{aux}
\begin{document}
\foreach \X [evaluate=\X as \Ymin using {int(\X+1)}] in {1,...,15}
{\foreach \Y [evaluate=\Y as \Zmin using {int(\X+1)}]in {\Ymin,...,15}
{\foreach \Z in {\Zmin,...,15}
{\ifnum\X<\Y
\ifnum\Y<\Z
\stepcounter{mystep}
\arabic{mystep}:\setcounter{aux}{\X}\alph{aux}\setcounter{aux}{\Y}\alph{aux}\setcounter{aux}{\Z}\alph{aux}
\fi
\fi
}}}
\end{document}
[![alt text][1]][1]
Und, wie saputello bereits demonstriert hat, braucht man keine packages dafür. Hier ist ein anderes Beispiel.
\documentclass{article}
\usepackage[margin=1in]{geometry}
\newcounter{mystep}
\newcounter{X}
\newcounter{Y}
\newcounter{Z}
\begin{document}
\setcounter{X}{0}\setcounter{Y}{0}\setcounter{Z}{0}
\loop%
\stepcounter{X}\setcounter{Y}{\theX}%
{\loop%
\stepcounter{Y}\setcounter{Z}{\theY}%
{\loop%
\stepcounter{Z}%
\stepcounter{mystep}\arabic{mystep}\alph{X}\alph{Y}\alph{Z}
\ifnum\number\value{Z}<15 \repeat%
}%
\ifnum\number\value{Y}<14 \repeat%
}%
\ifnum\number\value{X}<13 \repeat
\end{document}
**EDIT**: Von \theX `\theX` auf \number\value{X} `\number\value{X}` etc. umgestellt. Die Syntax wurde mir am 23.11.2018 von Ulrike Fischer in tex.se nahegelegt, und @saputello hat mich daran erinnert, dass in anderen Dokumenten, in denen `\the` umdefiniert wird, das schiefgehen schief gehen kann. Danke an Beide!
[1]: https://texwelt.de/wissen/upfiles/Screen_Shot_2019-03-08_at_3.59.44_PM.png