TukeyHSD takes an aov object, not an aovlist object. The result of aov() with an Error() term is an aovlist object. In the HH package, see ?MMC for an example of how to work around this limitation. See the maiz example. Rich