Форумы HiProg.com - MS ACCESS, VBA, VB

 

Ответить на сообщение

Вернуться к теме

Вы отвечаете на сообщение:

ник: Дядя Федор
acSaveNo относится к форме, а не к данным.
Поэкспериментируйте. Но с табличным видом, наверное, не пройдет.
Акс грузит таблу и все-тут.
Но проще сделать ленточную форму.
Тогда никакой юзер не сможет ее менять.

=================================

ИЛИ Попробуйте так:
Устанавливать при загрузке ширину колонок(полей)

Me!ИМЯПОДФОРМЫ.Form!ИМЯПОЛЯ.ColumnWidth=K*567

Private Sub Form_Open(Cancel As Integer)
  Me!fdata.form!NPP.ColumnWidth = 1 * 567
  Me!fdata.form!URN.ColumnWidth = 3.5 * 567
End Sub

K -кол-во см. (567 - это 1 см)
Можно код повесить и на открытие самой подформы:

Private Sub Form_Open(Cancel As Integer)
  Me.NPP.ColumnWidth = 1 * 567
  Me.URN.ColumnWidth = 3.5 * 567
End Sub

Если полей много - запомнить их в таблице и читать при открытии...
Таблица типа такой:
форма: поле : размер

TblSize
Idsize
FormName
Field1
Field2
Field3
...
Пример
Idsize FormName Field1 Field2 Field3
1 FrmZakas 1 2.5 5
2 FrmPost 1 12 7.33 6
3 Frm3 10 0 0
Ну, дальше понятно: запрос для нужной формы и все.

Кстати, в такой таблице можно реализовать и обратную задачу - хранить размеры колонок после "сдвигов", причем, для каждого пользователя (надо добавить его Id в табл. !)


Ваше имя:

Пароль:

Цитировать: [quote][/quote] Код: [code][/code]
Жирный: [b][/b] Наклонный: [i][/i]
URL: [url][/url] 

Сообщение:

 Размер файла не более 50 Кбт. Большие файлы можно размещать на www.slil.ru

Прикрепить:

 

Для вставки смайлов в текст щелкните по значку.