En faisant 2 listes, tu peux faire que lorsqu'on change l'une des 2, ca remette l'autre a 0. Ca évite que les petits malins remplissent les 2 à la fois. Ensuite, il suffit de ne prendre en compte que celle qui a une valeur non nulle.
Par exemple, si tu as une liste déroulante nommée "LISTE_1" et une autre nommée "LISTE_2"
tu mets sur "LISTE_1" un évènement javascript
ONCHANGE="if (this.value) document.getElementByName('LISTE_2').value=0"
et sur "LISTE_2" un évènement javascript
ONCHANGE="if (this.value) document.getElementByName('LISTE_1').value=0"
Enfin j'ai pas testé, ma syntaxe est sans doute un peu approximative, mais dans l'idée ca me semble faisable, non ?