2009-06-02 4 views
0

У меня есть пользователь, который имеет дело со страницей непрерывных форм базы данных Access, где они могут выполнять кучу фильтрации и ввода данных.MS Access Управление копированием/вставкой данных из непрерывной формы

Иногда пользователь хочет иметь возможность выбрать несколько строк из этой формы и вставить их непосредственно в электронное письмо. Перспективы форматирует данные в таблицу довольно хорошо само по себе, но проблема у нас возникают в том, что выпадающие элементы управления из заголовка включены в вставленных данных, как вы можете увидеть ниже:

Employee_Absences 
drpEmployee drpOrgDescrip lstTimeCode txtToDate txtFromDate chkShowExcused DESCR AbsenceDate Hours Excused_Hours Time Code employee_lookup.ORG_DESCRIP ImportedDate 
      6/2/2009 1/1/2009 0 Bob 1/4/2009 4 0 VAC Medical 5/7/2009 4:51:31 PM 
      6/2/2009 1/1/2009 0 Bill 1/4/2009 6 0 VAC Medical  5/7/2009 4:51:31 PM 
      6/2/2009 1/1/2009 0 Betty 1/4/2009 4 0 VAC Medical 5/7/2009 4:51:31 PM 
      6/2/2009 1/1/2009 0 Beth 1/5/2009 2 0 VAC Gamers 5/7/2009 4:51:31 PM 

Пользователь не хотите беспокоиться об удалении и переупорядочении столбцов каждый раз, когда они хотят включить пару строк в электронную почту, и было бы довольно недружелюбно заставить их в отдельный отчет или таблицу, чтобы получить две или три строки. Я попытался возиться с порядком параметров в запросе, который заполняет форму, но это совсем не помогает.

Есть ли какое-то событие Copy-to-Clipboard, в которое я могу подключиться и сделать магию для строк данных? Любые другие предложения?

ответ

1

Это, безусловно, проблема макета на форме. Выбор строк непрерывной формы не должен копировать данные из элементов управления в заголовке формы.

Возможно, я неправильно понял проблему?

Это, конечно, есть можно поместить данные в буфер обмена. Смотрите эту страницу:

Copy variables/control contents to memory

Но для вставки в сообщение электронной почты, вы должны были бы простой текст и электронной почты необходимо будет отображаться в фиксированной ширины шрифта. Если вы не хотите писать HTML, нет простого способа форматировать таблицу, которая будет вставляться в электронную почту без обычного текста. Если они отправляют HTML (что им не должно быть), таблица HTML будет работать. Если они используют RTF (и они не должны быть), я не знаю, что произойдет, если вы вставляете HTML.

Попробуйте выяснить, почему управление заголовком формы копируется. Моя ставка заключается в том, что пользователь не правильно определяет исходный выбор, и вы научите их делать это (или создайте подформат, чтобы предотвратить его), вам не нужно ничего программировать - это вся красота Access.

С другой стороны, я не верю, что разрешаю редактирование в форматах непрерывных или табличных данных, потому что если вам нужны динамические комбинированные поля и т. П. Для проверки данных, это может привести к возникновению всех проблем. Вместо этого я использую непрерывные формы и таблицы данных в виде списков и имеют подструктуру детали, привязанную к ПК непрерывной/таблицы данных, так что, когда вы выбираете запись в форме непрерывного/табличного листа, данные будут отображаться в редактируемой детализированной форме.

У меня было слишком много проблем с редактированием непрерывных форматов и таблиц данных, и именно поэтому я сделал это. Единственное исключение, которое я делаю для этого, заключается в форме типа счета-фактуры, где нет хорошего способа сделать это в противном случае.

+0

Спасибо за ссылку и предложение подформата детали - Теперь я могу создать небольшую кнопку буфера обмена, которую пользователь может нажать, чтобы скопировать данные в буфер обмена, как это определено отдельной функцией VBA. Вы не знаете, как перехватить их операцию «Копировать в буфер» (Ctrl + C или контекстное меню правой кнопки мыши), чтобы вызвать выполнение кода VBA? – nvuono

+0

Вы можете использовать Key Preview на форме, чтобы перехватить и протестировать эту комбинацию клавиш. Не уверен, что это то, что вам нужно или нет. –

 Смежные вопросы

  • Нет связанных вопросов^_^