Максимальное количество полей в источнике записей Access равно 255, как в случае с любым оператором Jet SQL. Ограничение на количество элементов управления в форме составляет 754 в течение срока действия формы (т.е. удаление элемента управления не дает вам дополнительного элемента управления).
Дизайн явно не правильный, но, как это часто бывает, мы не можем выбирать эти вещи!
В этом случае единственное решение, которое я могу придумать, - это основная форма, которая имеет одно поле, PK, а затем набор подчиненных форм с подмножествами полей, например, по 100 каждый. Это означает, что вы должны быть очень осторожны, чтобы убедиться, что ваша подчиненная форма сохраняет свои изменения в событии OnExit (в противном случае вы получите конфликты записи).
И, нет, это не очень хороший дизайн.
Но это, по крайней мере, обходной путь, если вы вынуждены иметь 400 полей, потому что у вас есть внешний источник данных, который вы не можете должным образом нормализовать.