There are ultimately only a few ways to do this. Several folks have discussed the idea that you would do better to move the data to Excel and then just pivot. If you are using a grid-like form / report for output, you COULD build something in which each text box gets filled programmatically using some VBA code, but if the table in question has more than 255 records in it, then when you pivot it you would have to generate more than 255 columns - and you can't do that in Access because of structural limits. Treating each place for text as a control, you would run into a limit of 768 controls on a form or in a report section, which also would be a limit. You can do this only for so big a table before you will be FORCED by those structural limits to stop. If you can get limits on how many columns will be required in your display, you can perhaps do this. If you cannot get limits imposed, you have painted yourself into a corner.