空室情報作成

Anonymous
2017-03-16T20:36:45+00:00

アクセス2016 で空室管理をいたしたいと思います。

設定は 部屋名、入居日、退室日です。どのようにすれば、部屋名に空室になった部屋名を表示するようにしたいのですが。よろしくお願いいたします。

Microsoft 365 と Office | Access | 家庭向け | Windows

ロックされた質問。 この質問は、Microsoft サポート コミュニティから移行されました。 役に立つかどうかに投票することはできますが、コメントの追加、質問への返信やフォローはできません。

0 件のコメント コメントはありません

45 件の回答

並べ替え方法: 最も役に立つ
  1. Anonymous
    2017-03-27T00:37:19+00:00

    > 不具合のメッセージは

    > 「入力テーブルまたはクエリQ-現在入居者が見つかりませんでした。

    > そのテーブルやクエリが存在していること、または名前が正しいことを確認してください。」

    > のメッセージが出ました

    そのままの意味です。

    [Q-現在入居者]という名前のクエリが

    そのデータベース上に存在していない、

    ということです。

    この場合、2つめの選択クエリにおいて呼び出そうとしている

    1つめの選択クエリの名前の指定が正しくないのではないかと。

    -----------------------------------------------------------

    SELECT [部屋番号マスタ].[マンションID],

    [マンションマスタ].[マンション名],

    [部屋番号マスタ].[部屋番号ID],

    [部屋番号マスタ].[室名],

    [Q_現在入居者].[入居者ID],

    [Q_現在入居者].[入居者氏名],

    [Q_現在入居者].[入居年月日],

    [Q_現在入居者].[退室年月日],

    IIf([Q_現在入居者].[入居者ID] IS NULL,

    "空室",

    "入居中") AS [入居状況]

    FROM ([部屋番号マスタ]

    INNER JOIN [マンションマスタ]

    ON [部屋番号マスタ].[マンションID] = [マンションマスタ].[マンションID])

    LEFT JOIN [Q_現在入居者]

    ON [部屋マスタ].[部屋番号ID] = [Q_現在入居者].[部屋番号ID]

    ORDER BY [部屋マスタ].[マンションID],

    [部屋番号マスタ].[部屋番号ID];

    -----------------------------------------------------------

    とりあえず、上記下線で示した箇所の記述が

    誤っていないかどうかご確認下さい。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  2. Anonymous
    2017-03-25T10:35:31+00:00
    1. [作成]タブ -> [クエリ デザイン]をクリックして

       クエリを新規作成する。

    1. [テーブルの表示]ボックスが表示されたら

       そのまま[閉じる]ボタンをクリックする。

    1. クエリツール[デザイン]タブ -> [結果]グループ内の

       [表示]ボタンをクリックして SQL ビューに切り替える。

    1. "SELECT;"という文字列が範囲選択されている状態になっているはずなので、

       そのまま Delete(DEL)キーをクリックするなどして全て削除する。

    1. 以下の SQL 文( SELECT から ; まで)を範囲選択してコピーし、

       クエリの SQL ビューに貼り付ける。


    SELECT [入居者マスタ].*

    FROM [入居者マスタ]

    WHERE NOT EXISTS (SELECT tmp.*

    FROM [入居者マスタ] tmp

    WHERE tmp.[部屋ID] = [入居者マスタ].[部屋ID]

    AND tmp.[入居日] > [入居者マスタ].[入居日])

    AND [入居者マスタ].[退室日] IS NULL;

    ----------------------------------------------------------------       

    おかげさまで、上記に記されましたクエリの構文は首尾よく起動しましたが

    citaの構文に不具合が生じております。

    SELECT [部屋番号マスタ].[マンションID],

           [マンションマスタ].[マンション名],

           [部屋番号マスタ].[部屋番号ID],

           [部屋番号マスタ].[室名],

           [Q_現在入居者].[入居者ID],

           [Q_現在入居者].[入居者氏名],

           [Q_現在入居者].[入居年月日],

           [Q_現在入居者].[退室年月日],

           IIf([Q_現在入居者].[入居者ID] IS NULL,

               "空室",

               "入居中") AS [入居状況]

    FROM ([部屋番号マスタ]

          INNER JOIN [マンションマスタ]

          ON [部屋番号マスタ].[マンションID] = [マンションマスタ].[マンションID])

    LEFT JOIN [Q_現在入居者]

    ON [部屋マスタ].[部屋番号ID] = [Q_現在入居者].[部屋番号ID]

    ORDER BY [部屋マスタ].[マンションID],

             [部屋番号マスタ].[部屋番号ID];

    不具合のメッセージは「入力テーブルまたはクエリQ-現在入居者が見つかりませんでした。そのテーブルやクエリが存在していること、または名前が正しいことを確認してください。」のメッセージが出ましたので「現在入居者」を「入居者氏名」に変更しましたが「現在入居者の代わりに入居者氏名」に川田同じメッセージが出ました。どのように設定すればよろしいのでしょうか?

    ご教示よろしくお願い申し上げます。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  3. Anonymous
    2017-03-25T01:25:52+00:00

    いつもありがとうございます。

    上の部分は上手く表示されました。ありがとうございます。

    下の部分を同じように作業しましたが「JOIN操作の構文エラーです。」の表示が出ました。コピー及び項目の変更ミスかもしれませんがエラーの原因がわかりません。下に変更いたしましたプログラムを記載いたします。ご教示よろしくお願い申し上げます。

    SELECT [部屋番号マスタ].[マンションID],

           [マンションマスタ].[マンション名],

           [部屋番号マスタ].[部屋番号ID],

           [部屋番号マスタ].[室名],

           [Q_現在入居者].[入居者ID],

           [Q_現在入居者].[入居者氏名],

           [Q_現在入居者].[入居年月日],

           [Q_現在入居者].[退室年月日],

           IIf([Q_現在入居者].[入居者ID] IS NULL,

               "空室",

               "入居中") AS [入居状況]

    FROM ([部屋番号マスタ]

          INNER JOIN [マンションマスタ]

          ON [部屋番号マスタ].[マンションID] = [マンションマスタ].[マンションID])

    LEFT JOIN [Q_現在入居者]

    ON [部屋マスタ].[部屋番号ID] = [Q_現在入居者].[部屋番号ID]

    ORDER BY [部屋マスタ].[マンションID],

             [部屋番号マスタ].[部屋番号ID];

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  4. Anonymous
    2017-03-24T11:51:04+00:00
    1. [作成]タブ -> [クエリ デザイン]をクリックして

       クエリを新規作成する。

    1. [テーブルの表示]ボックスが表示されたら

       そのまま[閉じる]ボタンをクリックする。

    1. クエリツール[デザイン]タブ -> [結果]グループ内の

       [表示]ボタンをクリックして SQL ビューに切り替える。

    1. "SELECT;"という文字列が範囲選択されている状態になっているはずなので、

       そのまま Delete(DEL)キーをクリックするなどして全て削除する。

    1. 以下の SQL 文( SELECT から ; まで)を範囲選択してコピーし、

       クエリの SQL ビューに貼り付ける。


    SELECT [入居者マスタ].*

    FROM [入居者マスタ]

    WHERE NOT EXISTS (SELECT tmp.*

    FROM [入居者マスタ] tmp

    WHERE tmp.[部屋ID] = [入居者マスタ].[部屋ID]

    AND tmp.[入居日] > [入居者マスタ].[入居日])

    AND [入居者マスタ].[退室日] IS N

    ---------------------------------------------------------     

    返信ありがとうございます。

    ご指示とうりにいたしましたが、下記のメッセージが出ました。

    SELECT [入居者マスタ].*

    FROM [入居者マスタ]

    WHERE NOT EXISTS (SELECT tmp.*

                      FROM [入居者マスタ] tmp

                      WHERE tmp.[部屋番号ID] = [入居者マスタ].[部屋番号ID]

                        AND tmp.[入居年月日] > [入居者マスタ].[入居年月日])

      AND [入居者マスタ].退室年月日] IS NULL;の

    構文エラー

    が出ました。部屋IDは部屋番号IDに入居日は入居年月日に部屋IDは部屋番号IDに

    退室日は退室年月日に入居者マスタに設定していますので変更いたしました。

    なぜ構文エラーが出るのでしょうか。入居者マスタの設定がおかしいのでしょうか

    ご教示をよろしくお願い申し上げます。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  5. Anonymous
    2017-03-24T07:39:27+00:00
    1. [作成]タブ -> [クエリ デザイン]をクリックして

       クエリを新規作成する。

    1. [テーブルの表示]ボックスが表示されたら

       そのまま[閉じる]ボタンをクリックする。

    1. クエリツール[デザイン]タブ -> [結果]グループ内の

       [表示]ボタンをクリックして SQL ビューに切り替える。

    1. "SELECT;"という文字列が範囲選択されている状態になっているはずなので、

       そのまま Delete(DEL)キーをクリックするなどして全て削除する。

    1. 以下の SQL 文( SELECT から ; まで)を範囲選択してコピーし、

       クエリの SQL ビューに貼り付ける。


    SELECT [入居者マスタ].*

    FROM [入居者マスタ]

    WHERE NOT EXISTS (SELECT tmp.*

    FROM [入居者マスタ] tmp

    WHERE tmp.[部屋ID] = [入居者マスタ].[部屋ID]

    AND tmp.[入居日] > [入居者マスタ].[入居日])

    AND [入居者マスタ].[退室日] IS NULL;


    この回答は役に立ちましたか?

    0 件のコメント コメントはありません