• 締切済み

Access2007での式

Access2003で作った「2008記録」というデーターベースをAccess2007に変換しました。又OSもXPからVISTAになりました。 この「2008記録」のフォームの中にまたフォームがありその中にテキストボックスを作り又そのテキストボックスの中に 「=Forms!2008記録!ID」とかいてあり今日までのIDの数をカウントしていました。ところがこれがエラーとなります。 「=Forms!2008記録!ID」という書式は無くなってしまったのでしょうか。 これと同じ目的を果たすためには何と書けばよいのでしょうか。 御指南いただければ幸いです。

  • skyc42
  • お礼率93% (776/827)

みんなの回答

  • o23
  • ベストアンサー率36% (64/175)
回答No.1

こんにちは! まず、「=Forms!2008記録!ID」ですが、通常この様に入力しても 「=[Forms]![2008記録]![ID]」の様に変換されると思うのですが、 どうでしょう? 質問する際は、事実を正確に伝えましょう。 さて、あるテキストボックスの、コントロールソースに =[Forms]![2008記録]![ID]が入力されているとして、それが IDの数をカウントとしたものだとのことですが、 それでは、2008記録フォームの[ID]と言うコントロールのソースは 何でしょう?クエリのフィールドですか? それが正しいデータを表示できているのかを確認しましょう。 また、ただ「エラーになります」では、質問者さんは分かっても回答する 人には分かりません。 何も表示されない、「#Name」と表示される、「#Erorr」になるなど、 何かありませんか? 補足してください。

skyc42
質問者

お礼

参考ご意見有り難うございます。 =Forms!2008記録!IDと書いてあったのですがどういう訳か =[Forms]![2008記録]![ID]にはなりませんでした。 又表示はエラーでした。 それから自己流で作成したデーターベースで次々に積み上げたフォーム故、整然とした説明が出来ず申し訳なかったです。 今日一日質問を書いてからもこの問題点をいじくり回しようやく解決しました。 結論は =[Forms][2008記禄][ID]と書いてOKになりました。(!は無くてよいみたいです) ほっとして質問を見たら書き込みがありました。 質問の仕方の勉強にもなりました。 書き込みしていただいて本当に有り難うございました。

skyc42
質問者

補足

お礼を書いてからまたまた早とちりで失敗しました。 (!は無くてよいみたいです)は×でやはり必要でした。 結論はテキストボックスに書いてあった=Forms!2008記録!IDが自動的に=[Forms]![2008記録]![ID]になりませんでエラー連発で困惑して試行錯誤していました。 いろいろやっているうちにこのテキストボックスのプロパテイから=Forms!2008記録!IDを入れたら=[Forms]![2008記録]![ID]になり正常になった次第です。 お礼と補足が逆になりすいません。 再度書き込んでいただいた事に感謝いたします。 これからもよろしくお願いします。

関連するQ&A

  • AccessのLikeの使用について

    こんにちは。 Accessでクエリなどに条件を設定する時、 Like [Forms]![フォームの名前]![テキストボックスの名前] と設定するのと、 [Forms]![フォームの名前]![テキストボックスの名前] とでは意味が違ってくるのでしょうか。 Likeの使い方がいまいち解っていません。 わかりにくい文章で申し訳ありませんが教えてください。 よろしくお願いします。

  • ACCESS フォームで入力した日付をクエリで読み

    ACCESS フォームで入力した日付をクエリで読み替えたい ACCESS フォームで入力した日付をクエリで使用しているテーブルの書式に変換したい フォーム テキスト名:日付にyyyymmdd で入力します クエリ テキスト名:日付はパラメータとして使用しています クエリ内で使用しているテーブルの日付書式は 日付:yyyy/mm/ddです パラメータは 「日付始」と「日付終」の2箇所のテキストに入力されたデータを使用しています。以下がパラメータです。 Between [Forms]![フォーム]![日付始] and [Forms]![フォーム]![日付終] フォームのテキストボックスにyyyymmddと入力してもクエリでエラーが出ることない パラメータを日付に設定したいのですがどうしたらよいでしょうか? ちなみに、以下の式を入れたらエラーです。 Between CDate(Format([Forms]![フォーム]![日付始],"yyyy/mm/dd")) and CDate(Format([Forms]![フォーム]![日付始],"yyyy/mm/dd")) と入力しましたところ、、、、「式が複雑すぎるか、、、」のエラーメッセージが出てしまいました。 どなたか助けてください。お願い致します。

  • Access テキストボックスの通貨型

    お世話になります。 フォームA   リストボックスがあり、その中の項目として[金額]があります。   そこに表示しているソースのテーブルの[金額]フィールドは通貨型です。 フォームB   [金額]テキストボックスがあり、書式は通貨にしてます。 フォームAのリストボックス上でダブルクリックするとフォームBが開き、フォームAで選択した金額がフォームBの[金額]テキストボックスにコピーするようにしてます。 Forms[フォームB]![金額] = Forms![フォームA]![リスト].Column(3) 金額のコピー自体は問題なくできておりますが、通貨型になりません(\やカンマが付かない)。 但し、テキストボックスに直接数字を入力すると通貨型で表示されます。 フォームAをダブルクリックするときに、 Forms[フォームB]![金額] = Format(Forms![フォームA]![リスト].Column(3),"\\#,###")とすれば、表示上はOKなのですが、このようにしないと通貨型でコピーは出来ないのでしょうか。 ご教授の程、宜しくお願い致します。

  • アクセスでテキストボックスの値が空白だったら

    お世話になっております。 フォームのテキストボックスの値が0か空白だったら、レポート上に表示されるものを変えたいのですが、うまくいきません。 If [Forms]![フォーム1]![テキストボックス1].value = 0 Or [Forms]![フォーム1]![テキストボックス1].value = "" Then Me![レポート上のテキストボックス] = "無" Else [Forms]![フォーム1]![レポート上のテキストボックス1] = [Forms]![フォーム1]![テキストボックス1] & "ヶ月" End If これだと何も入っていないときに"ヶ月"と表示されてしまいます。どのように書けばよいのでしょうか? ご教授願えませんでしょうか?

  • ACCESSサブフォームにデータ反映されない

    よろしくお願いします。 Access2010を使っています。 メインフォームにあるテキストボックス2つに条件を入力し、 抽出したデータをサブフォームで表示させたいと思います。 ●メインフォーム名「フォーム1」 テキストボックス2つ「tex1」「tex2」 ●データ元クエリ「q1」 フィールド名「ID1」「ID2」「Name」 ●サブフォームSQL SELECT q1.Name FROM q1 WHERE (((q1.ID1) = Forms![フォーム1]!tex1) And ((q1.ID2) = Forms![フォーム1]!tex2))); フォームを開き、tex1とtex2に入力してもサブフォーム表示が変わりません。 サブフォームをデータシートで別に開くと、データ抽出できていることは確認できました。 サブフォームのコントロールソースへSQLを入力するだけでは、 メインフォーム内でのデータは反映されないんでしょうか??

  • Accessで「キーワード検索」をしたい

    前任者が作ったデータベースを触っています。 私自身はAccessの基本操作がわかるくらいでVBAとかはよくわかりません。 今回その修正がしたいと思っています。 検索用フォームがあり、現在3つのコンボボックスがあってそれを選択して 「検索開始」をしています。 今回、その検索用フォームに「キーワード検索」というテキストボックスを1つ追加したいです。 検索の対応となるフィールドは2つあります。 「質問」「回答」 このどちらかのフィールドに「キーワード検索」した文字があればレコードを抽出してほしいです。 とりあえず検索結果を表示するためのクエリの「質問」「回答」の抽出条件に同様に Like "*" & [Forms]![F_検索フォーム]![キーワード] & "*"と入れてみました。 なんとなく違う気はするのですが、どうやってやれば良いのかイマイチわかりません。 またこの同じクエリに IIf(IsNull([Forms]![F_検索フォーム]![区分1cd]),True,[区分1cd]=[Forms]![F_検索フォーム]![区分1cd]) 抽出条件欄に「True」 これが3つのコンボボックス分あります。 何のためのフィールドでしょうか? また、私が追加する「キーワード検索」テキストボックスの分も作らないといけないものでしょうか? 素人質問で申し訳ありませんがアドバイスいただけたら助かります。 Accessのテキストは職場にたくさんあるのですが、私のレベルでは読んでも??ばかりです。 よろしくお願いします。

  • Access2003 タブコントロールについて

    フォームの詳細にタブコントロールを配置して、 その中にサブフォームを入れています。 そのサブフォームにあるテキストボックスの文字を レポートのテキストボックスに表示させたいです。 ただのフォームなら =Forms!フォーム名!テキストボックス名 でレポートに表示できますがタブコントロールがある場合は レポートのテキストボックスのコントロールソースに どういうふうに記述すればよいのでしょうか? よろしくおねがいします。

  • Accessのテキストボックスとコンボボックスの違い

    フォームにテキストボックスを3ケ用意し、テキストボックス名をtxt1,txt2,txt3としました。これにコマンドスイッチを作成し、機能を再クエリと設定しました。 フォームのサブフォームに再クエリの結果を表示するようにしました。 クエリのテキストボックス1の抽出条件は 条件  [Forms]![フォーム名]![txt1] または [Forms]![フォーム名]![txt1] Is Null    [Forms]![フォーム名]![txt1] Is Null テキストボックス2の抽出条件は 条件  [Forms]![フォーム名]![txt2] Is Null または [Forms]![フォーム名]![txt2]  [Forms]![フォーム名]![txt2] Is Null テキストボックス3の抽出条件は 条件  [Forms]![フォーム名]![txt3] Is Null または [Forms]![フォーム名]![txt3] Is Null [Forms]![フォーム名]![txt3] と設定し、テキストボックスにデータを入力し実行すると 正しい結果が得られるのですが、テキストボックスをコンボボックスに変更し、コンボボックス名をtxt1,txt2,txt3 とすると、抽出されません。 コンボボックスをテキストボックスのように扱うのには どうするのでしょうか。教えてください。

  • ACCESS データの修正

    フォーム上でデータの修正を行う場合、目的のID番号を指定して その中のデータを修正したいのですが、ID番号のテキストボックスにIDを入力してもダメなんですね・・・。 テキストボックスに入力したID番号のデータを表示させるにはどうすればよいのでしょうか?

  • ACCESSのマクロを使った抽出について

    質問をさせてください。 私は今、アクセス2002を使ったデータベース管理をしています。 そこで、データベースを検索方式でレポート形式表示しようと思い、フォームに抽出するテキストボックスとボタンを作りました。 その抽出するためのボタンに仕込んだマクロ「フォームを開く」のWHEREに [名前] Like "*" & [Forms]![フォーム]![テキストボックス] & "*" と入力して使っています。一応動きますが抽出できるのは1項目のみです。 このままでは使いにくいので、抽出する条件を複数指定して抽出をしたいと考えているのですが どうも上手く行きません。専門に扱っている本にも詳しくはのっていませんでした。 そこで ---------------------------------- 名前[テキストボックス1] 住所[テキストボックス2]         [ボタン] ---------------------------------- というようなフォームで、 レポート中の名前に○○を含み、 なおかつ住所に○○を含むデータを1度の検索で抽出するには どうしたら良いのでしょうか。 そして、もうひとつ。 同じようなものなのですが、コンボボックスを使って性別の抽出を行おうと思っているのですが 男性女性全てを抽出するためにはコンボボックスの文字が"すべて"では上手く動きません。 原因は"すべて"というワードを性別が含んでないからなのですが "すべて"を指定した時、全ての性別を抽出するにはまくロにどういった命令を書けば良いのでしょうか。 よろしくお願いします。

専門家に質問してみよう