0

一連のフィルタリングとデータ入力を実行できるAccessデータベースの連続フォームページを扱っているユーザーがいます。

場合によっては、ユーザーはこのフォームからいくつかの行を選択して、それらを直接電子メールに貼り付けたいと思うことがあります。Outlookはそれ自体でデータをテーブルに非常にうまくフォーマットしますが、私たちが抱えている問題は、以下に示すように、ヘッダーからのドロップダウンコントロールが貼り付けられたデータに含まれていることです。

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

ユーザーは、電子メールに2行を含めるたびに列を削除したり並べ替えたりする必要はありません。また、2行または3行を取得するためだけに、列を別のレポートまたはデータシートに強制するのはかなり不便です。フォームに入力されているクエリのパラメータの順序をいじってみましたが、これはまったく役に立ちません。

データ行にフックして魔法をかけることができる、ある種のCopy-to-Clipboardイベントはありますか?他に何か提案はありますか?

4

1 に答える 1

1

これは確かにフォームのレイアウトの問題です。連続フォームの行を選択しても、フォームヘッダーのコントロールからデータをコピーしないでください。

おそらく私は問題を誤解しましたか?

クリップボードにデータを置くことは確かに可能です。このページを参照してください:

変数/制御内容をメモリにコピーします

ただし、電子メールに貼り付けるには、プレーンテキストが必要であり、電子メールは固定幅フォントで表示する必要があります。HTMLを作成する場合を除いて、プレーンテキスト以外の電子メールに貼り付けるテーブルをフォーマットする簡単な方法はありません。HTMLで送信している場合(本来はそうではない)、HTMLテーブルが機能します。彼らがRTFを使用している場合(そして使用すべきではない場合)、HTMLを貼り付けるとどうなるかわかりません。

フォームヘッダーコントロールがコピーされる理由を理解してください。私の考えでは、ユーザーが最初の選択を正しく定義しておらず、それを行うようにユーザーに教える(またはサブフォームを設計してそれを防ぐ)と、何もプログラムする必要がなくなります。これがAccessの全体的な美しさです。

別の注意点として、データ検証に動的コンボボックスなどが必要な場合、あらゆる種類の問題が発生する可能性があるため、連続形式またはデータシート形式での編集を許可することは信じていません。代わりに、リストとして連続フォームとデータシートフォームを使用し、連続/データシートフォームのPKにバインドされた詳細サブフォームがあるため、連続/データシートフォームでレコードを選択すると、データは編集可能な詳細サブフォームに表示されます。

連続フォームとデータシートフォームの編集で問題が多すぎたので、それを実行しました。私がそのために作る唯一の例外は、請求書タイプのフォームであり、それ以外の方法でそれを行う良い方法はありません。

于 2009-06-03T02:59:13.933 に答える