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