• ベストアンサー

Accessのフォームでデーターが入力できない

超、超、初心者です。 的外れな質問をしていたら、ごめんなさい。 クエリを元にフォームを作ったのですが、データーを入力する欄が出てきません。つまり、新しいレコードの欄(*のついてるところ)が出てきません。 クエリを元にすると、出ないものなんですか? ちなみに、クエリでは簡単な計算をさせてあります。 Windows MeでAccess2000です。 どうかよろしくお願いします。

  • yupa
  • お礼率61% (72/118)

質問者が選んだベストアンサー

  • ベストアンサー
  • ryuu001
  • ベストアンサー率61% (46/75)
回答No.5

> ”部品コード”入力時に 検索し 表示 いろいろと方法は ありますが、Dlookupはお手ごろです。 例えば フォーム上の 部品コード を元に  ”部品マスター”の 部品名 を  フォーム上の 部品名表示テキストボックスに表示するには 次のように 使います。 Me.部品名 = Dlookup("[部品名]","[部品マスター]","[部品コード]='" & Me.部品コード & "'")

yupa
質問者

お礼

丁寧な説明ありがとうございます。

その他の回答 (4)

  • ryuu001
  • ベストアンサー率61% (46/75)
回答No.4

入力用フォームは ”入出庫情報”のテーブルだけを使ったほうが 無難だと思います。 ”部品マスター”の情報は、 非連結の テキストボックス か ラベル をフォームに配置し、 ”部品コード”入力時に 検索し 表示すれば良いと思います。

yupa
質問者

補足

回答ありがとうございます。 >”部品コード”入力時に 検索し 表示すれば良いと思います。 って、具体的にどうすればよいのでしょう。 よろしければ、回答お待ちしております。

  • ryuu001
  • ベストアンサー率61% (46/75)
回答No.3

集計クエリーと云う言葉が正しいのか分かりませんが、 yupaさんの作られた選択クエリーでは 部品コードごとに 出庫数、返品数、入庫数など 合計 を出してますよね。 そのことを意味して 集計クエリー と書きました。

yupa
質問者

お礼

そうなんですか・・・ 知らずにすみません。 ありがとうございました。

  • ryuu001
  • ベストアンサー率61% (46/75)
回答No.2

集計クエリーを元に作られたフォームでは 新規入力は出来ないと思います。 フォームには集計結果が表示されているので、 新規入力では 集計結果を入力しようとしていて、 通常の逆の順で処理を行おうとしているためだと思います。 これは、『アクセスで、集計結果を テーブルに展開出来ない。』からだと思います。

yupa
質問者

お礼

お答えありがとうございます。 集計クエリーを元に作ったわけでは、ないのです。 選択クエリーを元に作ったんですが、 それでも計算をさせちゃうと集計クエリーに なっちゃうんですかねぇ。(゜ーÅ)ホロリ あああああ、このさきどうしよぉぉぉぉ

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.1

通常は下記操作をすると思いますが、次ぎの操作とどこが違うか補足してください。 違うのは(10)だけでしょうか。 (1)アクセスを立ち上げ、指定データベースを立ち上げ。 (2)フォームをクリック (3)新規作成をクリック (4)フォームウイザード-(基になるテーブル・クエリの選択)▼をクリックして、クエリ名を出し-OK (5)選択可能で選択したフィールドで>>をクリックし    全項目選択-次へ (6)単票形式-次へ (7)(スタイル)標準-次へ (8)フォーム名指定し-完了 (9)フォームが表示される (10)レコードセレクタで「右三角*」をクリック すると最終レコード数+1になり、ブランクのテキストボックスが出る。 また (1)(オブジェクトタブ)クエリをクリック (2)指定のクエリ(名)をクリック (3)クエリの結果がテーブル形式で表示される (4)メニューの「表示」をクリック (5)「SQLビュー」をクリック。SQL文が表示される。 どんなSQL文が出ますか。

yupa
質問者

補足

親切丁寧にありがとうございます。 おっしゃられているように違うのは(10)だけなんです。 それと、(5)の「SQLビュー」をクリックすると 下記のような文章が出ました。 SELECT [部品マスター].[部品コード], [部品マスター].[部品名], Sum(IIf(IsNull([出庫数]),0,[出庫数])) AS 出庫数の合計, Sum(IIf(IsNull([返品数]),0,[返品数])) AS 返品数の合計, Sum(IIf(IsNull([入庫数]),0,[入庫数])) AS 入庫数の合計, [部品マスター].[初期在庫数], [初期在庫数]+[入庫数の合計]-[出庫数の合計]-[返品数の合計] AS 現在庫数, [部品マスター].[部品ID] FROM 部品マスター LEFT JOIN 入出庫情報 ON [部品マスター].[部品コード]=[入出庫情報].[部品コード] GROUP BY [部品マスター].[部品コード], [部品マスター].[部品名], [部品マスター].[初期在庫数], [部品マスター].[部品ID]; わたしには、何の事やらちんぷんかんぷんですが、 これで原因が分かるでしょうか? よろしくお願いします。

関連するQ&A

  • Access2003 フォームの入力ができない

    Accessまったくの初心者です。的外れな質問をしているかもしれませんが、よろしくお願いいたします。 FOM出版の「よくわかるAccess2003基礎」を使って勉強している最中なのですが、途中でつまづいてしまいました。 お客様Q&Aにも問い合わせをしている所なのですが、2営業日を過ぎないと回答が得られないとの事で、時間がもったいないので、こちらでも質問させてください。 テーブルを元にクエリを作成しフォームを作ったのですが、フォームにデータを入力しようとすると、PCより「ポンポン」と警告音がなり入力が全く出来ない状態です。 試しに、既存ファイルのクエリに入力をしてみたのですが同じ状況で入力できません。 テーブルには、数値の入力は出来ました。 フォームにデータを入力するには何か特別な操作が必要なのでしょうか? よろしくお願いいたします。

  • アクセスのフォームでデータ元をテーブルからクエリにかえたい

    上手く表現できるかどうかわからないのですが、頑張って書きます。少々長いです。 アクセスでフォームを使ってデータ入力しています。これは単純で、あるテーブルへのデータ入力をフォームを使ってやるだけのことです。このテーブルの中に「都道府県」というフィールドがあります。ある事情からこのフォームを使ってデータ入力(または修正)をするレコードは、「都道府県」のフィールドが「福岡県」のものだけでよくなりました。 そこで、「都道府県」に「福岡県」を持っているレコードだけを取り出すクエリを作ります。このクエリを元にして、同じフォームでデータ入力したいのです。入力項目は全く同じです。「福岡県」をもっているレコードだけが全く同じフォームで表示されるようにしたいのです。 もとのテーブル名を「全データ」とし、クエリを「福岡県抽出クエリ」と呼ぶとすると、どこかで「全データ」を「福岡県抽出クエリ」に書き換えればすべてのテキストボックスのデータ元が入れ替わってくれると思うのですが、それでいいのでしょうか。その場合、どうやったらいいのでしょう。 なぜ一からファームを作り直さないかというと、テキストボックスの大きさや配置を決めるのに膨大な労力を費やしていて、全部をやり直したくないからです。 どうかお願いします。ご指導ください。

  • Accessのフォーム

    Access2003を使用しています。 テーブルまたはクエリを元に作成したフォームにはテーブル・クエリに入力されているデータが表示されますよね? それらのデータをフォームから変更出来ないようにする方法はありますか? データ自体を非表示(入力用フォーム)にするのではなく、既存のデータは表示されるけど変更は出来ないという状態にしたいです。 ちなみに新規入力は行えるようにしておきたいです。 よろしくお願いします。

  • アクセス2000のフォームについて

    アクセスでまたつまずいてしまいました。ちょっと教えてください。 複数のテーブルから選択クエリを作り、それを基にオートフォームでフォームを作ったのですが、フォームでデータの入力が出来ません。クエリでもデータの入力が出来ません。 「このレコードセットは更新できません」と下のほうに出ます。 フォームのプロパティのデータの更新の許可と、データ入力用のところは“はい”になっています。 私では原因がわかりません。わかりにくい質問でしょうが、どなたかご指導お願いします。

  • ACCESS新規レコードが追加出来なくなりました

    ACCESS2010初心者です。クエリから入力用のフォームを作りましたが、新規レコードの保存が出来なくなりました。※マーク有効、データ入力も可能、エラーメッセージなしですが、フォームを閉じて、開きなおすと新規レコードが消えている(保存されていない)といった状況です。フォームの元クエリも新規レコード保存なしですが、クエリの元デーブルのみ新規データがどんどん追加されています。原因と対策をご教授頂きたく宜しくお願い致します。

  • アクセスのフォーム入力について

    アクセス初心者です。操作方法でどうしてもわからないところがあり、知識を分けていただけたら嬉しいです。 仕事で、フォームを使って新規データ入力を行うことがとても多いのです。新しいレコードにデータを入力する際に、最終レコードのデータが初期値として入力されているようにすることは可能でしょうか? 日付などの共通のデータが、新しいレコードの初期値として予め入っていればとても助かります。新レコード入力の際に、常に最終レコード(一つ前に入力したデータ)の値を入れておく方法があれば、ご伝授をお願いいたします。

  • Accessのクエリでデータの入力ができません

    Access2000を使っている超初心者です。 参考書に基づいて、2つのテーブルをリレーションシップして、選択クエリを作成したのですが、このクエリから既存データの修正をしようとすると入力できません。また、最終行に*マークの新規データ入力欄がなく、データの追加もできません。 フォームの方もこのデータソースをテーブルのひとつににすると*マーク行が出て入力できるのですが、このクエリにすると*マーク行が出てこないです。 参考書のとおりやってるつもりなのですが、何が原因でしょうか? よろしくお願いします。

  • Access2010 更新データのレポート表示

    Access初心者です。 新規データを入力しても、レポートが更新されずに困っています。 (テーブルや、フォーム内では、データは更新されています) エクセルデータをAccess2010にインポートして、元テーブルを作成しました。 元テーブルを元に、フォーム・レポート・検索クエリ(年度別・分類別)等を作成しました。 ここまでの作業で、新規データの入力はありませんでした。 ところが・・・ 新規データをフォームに入力すると、元テーブルは更新されますが、既に作成しているレポートには、新規レコードが表示(反映)されません。 更新されている元テーブルを元に、もう一度レポートを作成しても、新規レコードは表示されません。 ホームタブの「全て更新」ボタンをクリックしても、新規レコードはレポートには表示されません。 尚、Access初心者です。 「更新クエリ」なるものは、作成していません。というか、「更新クエリ」って何?状態です。 また、クエリそのものが良くわかっておらず、作成したクエリは全て「検索」のためのクエリで、抽出条件に「 [] 」を入力したり、フィールドに「 年度: Year(DateAdd("m",-3,[発送日])) 」を入力したりしかできません。 勿論、リレーションシップって何???状態です。 どうしたらよいのでしょうか??? どなたか、初心者でもわかるように、教えていただけないでしょうか? 宜しくお願いいたします。

  • accessのフォームで元になるクエリの名称を変更した場合

    ACCESS2000の超初心者です。先日に質問を入力しましたが内容を間違えていましたので再掲です。宜しくお願いいたします。  accessのフォームで元になるクエリの名称を変更した場合、そのフォームは実行しても「データが取り出せません」となってしまうので、フォーム側の設定変更で対応したいのです。このサイトの過去質問からデザインビューのプロパティでレコードソースを新しいクエリに変えればよい となっていたので、やってみましたが「データが取り出せません」のままです。レコードソースはプロパティを開いてデータのタブの▼からクエリを選択して変更しているのですが、変更方法が間違っているのでしょうか。

  • ACCESS フォーム

    ACCESSの初心者です。 フォームのメインフォーム、サブフォームを使ってデータを入力しています。 サブフォームにデータを入力後、マウスを使わないで次のレコードに移動したいのですが、どのような方法がありますか。   よろしくお願いします。

専門家に質問してみよう