
【ACCESS】に関する知恵袋
【質問】
[Access]出勤表をかねた勤務表をアクセスで作成したいと思っています。ボタンをクリックすると縦(列)と横(行)に従業員名とその月の日付(1~31日)が表示されて、すべての従業員の勤務状態がわかるようにしたいです。_■作成したい表のイメージ[氏名/日]1日 2日・・・・31日氏名①___[8h]___[___]_______[____]氏名②___[8h]___[8h]_______[8h]■テーブルには、宅健の用語集に対する見解は、従業員一覧のテーブル①と、従業員が何時間働いたかを記録するテーブル②があります。-------------------テーブル①USERIDNAMEテーブル②USERIDTIMEREGIST_DAY(yyyy/mm/dd)-------------------従業員の人数が変更しないのであれば日付分のテキストボックスを用意して、ACCESSの知恵袋について言えることは、ACCESSの知恵袋についてだが、宅健の用語集の詳細をお伝えすると、その対象のテキストボックスへSQLで取得した勤務者の勤務状態を入力していけばよいと思っていますが、従業員の人数が変化する場合にフォームなどを利用してもっと効率的に実施する方法はあるのでしょうか?
【解答】
NAMEもTIMEもAccessの予約語なので避けた方が吉かと。http://support.microsoft.com/default.aspx?scid=kb;ja;286335なのでちょっと変えました。ACCESSの知恵袋については、テーブル名→テーブル1TIME→HOURS (長整数型)(状況によっては、ではない方が良いかも)クエリのSQLビューに貼り付けてみてください。PARAMETERS 年月 LONG ;TRANSFORM Sum([テーブル1].[HOURS]) AS HOURSの合計SELECT [テーブル1].[USERID], Sum([テーブル1].[HOURS]) AS [合計 HOURS]FROM テーブル1WHERE (((CLng(Format([regist_day],"yyyymm")))=年月))GROUP BY [テーブル1].[USERID]PIVOT Day([REGIST_DAY]) In (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31);開くと年月を聞いてきますので、201109 などのように間違えたら、宅健の用語集を説明すると、宅健の用語集から考えると、ACCESSの知恵袋が、Shift + F9 でやり直してください。なお、大の月小の月に関わらず31まで日付があるのはご愛嬌ということで・・。フォームならこのクエリを元に考えられたらと思います。