Hast du die Idee von Markus mit dem Array probiert?
Delphi-Quellcode:
TAutoHersteller = (ahVW, ahMBW, ahBenz)
TAutoList = class(TObjectList)
TAutos = array[TAutoHersteller] of TAutoList;
for AutoHersteller := Low(TAutoHersteller) to High(TAutoHersteller) do
for I := 0 to FAutos[AutoHersteller].Count - 1 do
if FAutos[AutoHersteller].Items[I].NameOfCar = aCar then