• ベストアンサー

Access2003とAccess2007の違い

bonaronの回答

  • bonaron
  • ベストアンサー率64% (482/745)
回答No.2

これじゃないでしょうか? Access 2007 のフォームでフィルタを実行する場合、抽出結果にフィルタが反映されない http://support.microsoft.com/kb/941800/ja

sakura54
質問者

お礼

banaron様 ご回答感謝いたします。 ご回答で紹介してくださったサイトを見た瞬間「これで解決する」と強い期待を持ったのですが結果はだめでした。 2007のフォームデザインのプロパティで読み込み時のフィルタ使用を「いいえ」にしても、いったん閉じてやり直してもおなじです。 しかし、コードに書かれているフィルタ作業に2007のフィルタ機能が影響していることは間違いないように感じました。 ちなみに2003ではフォームデザインのプロパティで「フィルタの使用」は「はい」の状態で正常に動作しています。 いづれにせよアドバイスくださってありがとうございました。

関連するQ&A

  • 年を条件にデータを抽出するには?

    フィールド1 2012/01/01 2012/01/02 2011/01/01 2011/01/02 2010/01/01 2010/01/02 と言うデータがあり、それをもとに表形式でフォームを作りました。 フォームヘッダーにコンボボックス(名前:コンボ3)を作り、 値集合タイプ:値リスト 値集合ソース:"2012";"2011";"2010" にしました。 コンボボックスのAfterUpdateイベントでコンボ3に表示されている値を年を抽出したいのですが vbaでどうやればいいのでしょうか? クエリは作りません。 Private Sub コンボ3_AfterUpdate() Me.Form.Filter = "フィールド1 Between #" & Me.コンボ3.Value & "# And #" & Me.コンボ3.Value & "#" & "'" Me.Form.FilterOn = True End Sub や Private Sub コンボ3_AfterUpdate() Me.Form.Filter = "フィールド1 Between #" & Me.コンボ3.Value & "/01/01" & "# And #" & Me.コンボ3.Value & "/12/31" & "#" & "'" Me.Form.FilterOn = True End Sub にすると 実行時エラー クエリ式 <式> の <メッセージ> (エラー 3075) 入力した式が、メッセージに示されている原因によって無効です。フィールド名と区切り記号を正しく入力していることを確認してから、もう一度実行してください。 となってしまいます。 2010/01/01と2010/01/02を抽出させたいです。 ご回答よろしくお願いします。

  • Accessのフォーム その2

    すいません、以前にも同じ質問をしたのですが、私の質問の仕方が悪くてうまくいきませんでした。 回答してくださった方、ありがとうございました! もう一度、詳しく質問しなおします。 顧客データを登録しているのですが、テーブルを元に登録フォームを作成しました。 商品がたくさんあって、4つのコードに分かれています。フォームの中に[A][B][C][D]と4つのコンボボックスを作成し、絞込み検索ができるようにはしました。 しかし、選んだデータの[A]しかテーブルに表示されません。例えば[A]のコンボボックスの中から[1010]を選択、[B]のコンボボックスから選択しようとしても空っぽです。 テーブルを見ると、[A]で選んだ[1010]だけが表示されています。 非連結のときはうまく出てたんですが・・。 もしかして連結列が間違ってるのでしょうか?? 元になるテーブルは Aコード A  Bコード B Aコード Cコード C Bコード Dコード D Cコード この2列目を表示したいのです。(2列目が[1010]など表示したいデータ) 列数はそれぞれ「2」で連結列は「2」です。 更新後処理は以下の通りです。 Private Sub コンボ0_AfterUpdate() Me!コンボ2.Requery End Sub Private Sub コンボ2_AfterUpdate() Me!コンボ4.Requery End Sub Private Sub コンボ4_AfterUpdate() Me!コンボ6.Requery End Sub ぜひよろしくお願いします。

  • アクセスのYES NO型の処理について

    アクセス2010を使用している独学の初心者です。 フォームで大分類、中分類、小分類のカテゴリーにそれぞれチェックボックスを作っており、その商品のいる、いらないを選択したらその商品一覧テーブルにあるYES NO型のチェックボックスをオンオフしたいのですがうまくいきません。 今、同じフォーム内にある大分類とそれぞれ紐づいている中分類と小分類のチェックボックスをオンオフできるように private sub chk_大分類.value=false then me.chk_中分類.value=false me.chk_小分類.value=false ここまで書いているのですが、商品一覧の[大分類]にカテゴリーされている商品の不要商品フラグのチェックボックスをオンオフする書き方がわかりません。 すごくざっくりとした説明になってしまいましたが、どなたかご教示いただけませんでしょうか。 よろしくお願いいたします。

  • アクセス コンボボックスについて

    コンボボックス 印刷ボタンについて アクセス勉強中です。 フォームで作成した画面 だけを印刷する、コンボボックスを作成しています。 コンボボックスウィザードにてフォーム印刷ボタンを作成したのですが、 1000人くらいの、すべてのデーターが印刷されてしまい困っております。 どこを変更すれば1枚だけ印刷ができるのでしょうか? イベントプロジャという部分は下記です。 またプロジャー以外に何かしなければならないのでしょうか?? どうぞ宜しくお願いいたします。 Option Compare Database Private Sub リスト70_AfterUpdate() ' コントロールの値と一致するレコードを検索する Dim rs As Object Set rs = Me.Recordset.Clone rs.FindFirst "[IDI] = " & Str(Me![リスト70]) Me.Bookmark = rs.Bookmark End Sub Private Sub コンボ73_AfterUpdate() ' コントロールの値と一致するレコードを検索する Dim rs As Object Set rs = Me.Recordset.Clone rs.FindFirst "[NO] = " & Str(Me![コンボ73]) Me.Bookmark = rs.Bookmark End Sub Private Sub コンボ73_BeforeUpdate(Cancel As Integer) End Sub Private Sub 生年月日_AfterUpdate() Me.年_____齢 = Int(DateDiff("d", [生年月日] - 1, Date) / 365.25) End Sub Private Sub 郵便番号_AfterUpdate() Me!現住所.SetFocus Me!現住所.SelStart = Len(Me!現住所) End Sub Private Sub コマンド121_Click() On Error GoTo Err_コマンド121_Click Dim stDocName As String Dim MyForm As Form stDocName = "顧客リスト" Set MyForm = Screen.ActiveForm DoCmd.SelectObject acForm, stDocName, True DoCmd.PrintOut DoCmd.SelectObject acForm, MyForm.Name, False Exit_コマンド121_Click: Exit Sub Err_コマンド121_Click: MsgBox Err.Description Resume Exit_コマンド121_Click End Sub

  • access2000の事で教えてください。

    access2000で顧客のデータベースを作られてるのですが 作った本人が居ない為?といいますか初心者の為、本を片手に 見てるのですがよくわかりません。 教えてください。 顧客の登録情報を変更するにあたり非連結のコンボボックスに 苗字を入れると検索でコンボボックスに苗字がソートされて出てきます。 コードは下記になります。 Private Sub 顧客名_AfterUpdate() ' コントロールの値と一致するレコードを検索する Dim rs As Object Set rs = Me.Recordset.Clone rs.FindFirst "[顧客CD] = " & Str(Me![顧客名]) Me.Bookmark = rs.Bookmark End Sub 値集合タイプはテーブル/クエリ 値集合ソースでクリエを作ってる?昇順にしてるようです。 ただ「姓」と「名」が分かれてる為、このままですと「姓」の表示がコンボボックスに出てくるのですが 「名」の方が出てこない為、見づらいです。 コンボボックスに「姓」に続き半角スペース開けて「名」が出るように出来ないでしょうか? すいませんが、ご指導ご鞭撻の程、宜しくお願い致します。

  • Accessで家計簿

    いま下記URLをもとに家計簿を作成しております。 http://cropcrusher.web.infoseek.co.jp/shufuden/windowsfolder/accessx/acs.html#acs00 しかし「変数を抽出条件に用いるクエリ」の部分がうまくいかずこまっています。 以下作成ソース 【Form】 Option Compare Database Private Sub Calendar_GotFocus() Me.Calendar.Visible = True Me.Calendar.Value = Date End Sub Private Sub Calendar_Click() Me.年 = Year(Me.Calendar.Value) Me.月 = Month(Me.Calendar.Value) Me.日 = Day(Me.Calendar.Value) End Sub Private Sub 小分類名_Click() Forms!支出入力フォーム!小分類名.RowSource = "大分類毎小分類" End Sub Private Sub 大分類名_Change() Dim Cls1 As String Cls1 = "" Cls1 = Forms!支出入力フォーム!大分類名.Value Call 大分類で小分類(Cls1) End Sub 【モジュール】 Option Compare Database Function 大分類で小分類(Cls1) Dim dbs As Database, qdf As QueryDef, strSQL As String Set qdf = Nothing DoCmd.Close acQuery, "大分類毎小分類" DoCmd.DeleteObject acQuery, "大分類毎小分類" Set dbs = CurrentDb strSQL = "SELECT 小分類名 FROM 分類関連マスタ WHERE 大分類名" & "=" & Chr$(34) & Cls1 & Chr$(34) & ";" Set qdf = dbs.CreateQueryDef("大分類毎小分類", strSQL) End Function クエリは毎回作成されているのですが、 Private Sub 小分類名_Click() Forms!支出入力フォーム!小分類名.RowSource = "大分類毎小分類" End Sub の部分がうまくいっていないのか、クリックしてもコンボボックスになにも表示されません。長々と申し訳ありません。 もしよろしければどなたか教えてください、宜しくお願いします。

  • ACCESSでコンボボックスにSQLで抽出した値を表示したい

    いつもお世話になっております。 ACCESS初心者です。 テキストボックスに入力したフリガナから、あいまい検索させ抽出した ものをコンボボックスに表示させたいのですが、うまくいきません。。 (コンボボックスに何も表示されないです) 過去の質問やネット検索でも調べたのですがイマイチ分かりませんでした。 どなたか詳しい方、ご教示いただけると嬉しいです。 OS:windowXP ACCESS:Ver2003 Private Sub テキストボックス名_Afterupdate() Me.コンボボックス名.RowSource = "SELECT フィールド名 FROM テーブル名 WHERE フリガナ LIKE '" & Me!テキストボックス名 & "*';" End Sub どうぞよろしくお願いいたします。

  • 【Access】サブフォームのコンボボックス連携

    ACCESSで社員の資格情報を入力するシステムを作成したのですが 以下の問題を解決できず困っています。 どうすればいいか お力を貸して頂けないでしょうか? ■問題:メインフォームで別レコードに移動した際 サブフォーム内の連携コンボボックスを更新されない □コンボボックス2の表示項目 1.分類別No 2.資格名ID 3.資格名 3のみを表示していますが、 1つ目のコンボボックス1の数値で 全コンボボックス2の資格名が出てしまいます。 ■フォーム構成 メインフォーム内に以下を設置 1.移動ボタン 2.帳簿サブフォーム □サブフォーム構成 レコード1 コンボボックス1 コンボボックス2 レコード2 コンボボックス1 コンボボックス2 ~~ 最終レコード コンボボックス1 コンボボックス2 ■コントロールソース コンボボックス1:大分類ID コンボボックス2:資格名ID ■テーブル構成 資格名  資格名ID(主キー)  大分類ID  分類別ナンバー(大分類ごとの登録順ナンバー)  資格名   資格大分類  大分類ID(主キー  大分類名 (IT系・運転系など) ■コンボボックス2の値集合ソース(表示項目:資格名) SELECT 資格名.資格名, 資格名.分類別No, 資格名.資格名ID FROM 資格大分類 INNER JOIN 資格名 ON 資格大分類.資格大分類ID = 資格名.資格大分類ID WHERE (((資格名.資格大分類ID)=[Forms]![メインフォーム]![サブフォーム]![コンボボックス1])) ORDER BY 資格名.分類別No; ------------------------------------ サブフォームに記載し効果のなかったVBAコード ’再クエリ Private Sub Form_Current() Dim cntrl As Control If Not IsNull(Me![コンボボックス1]) Then For Each cntrl In Form.Controls If cntrl.ControlType = acComboBox Then cntrl.Requery End If Next cntrl End If End Sub ’ソース更新 Private Sub Form_Current() With Forms!メインフォーム名!サブフォーム名!コンボボックス2 .RowSource = .RowSource End With End Sub ■参考サイト 'サブフォーム内での2つのコンボボックスの連動について 'http://goo.gl/nfvxW '~ '>   コンボボックスAの更新後処理イベントに '> Me!コンボボックスB.Requery '> 'Me.コンボボックスB.RowSource = Me.コンボボックスB.RowSource '数値でコンボボックス選択 'http://goo.gl/ovZ3C 'リストボックスの行を選択するときは、「Selected(n)」を使います 'http://goo.gl/RbsWX 'サブフォームの指定 ' =Forms!フォーム名!サブフォームコントロール名.Form.テキストボックス名 'http://goo.gl/vKxtj

  • アクセス2000

    教えてください。 アクセス2000で下記の構文の’原価’という項目を追加したいのですが、 テキストに参照してきてくれません。’人工’は追加できたのですが・・・・ テーブル・クエリ・等はフィールド追加しているのですが・・・ 何が悪いのでしょうか・・・ Private Sub 商品コード_AfterUpdate() 'テキストボックスに商品コードコンボボックスの値を代入します Me!品名 = Me!商品コード.Column(1) Me!単位 = Me!商品コード.Column(2) Me!単価 = Me!商品コード.Column(3) Me!人工 = Me!商品コード.Column(4) Me!原価 = Me!商品コード.Column(5)

  • Access 検索フォーム

    いつもお世話になってます。 Accessの検索フォームについて教えて下さい。 業務マスターと仕事DBという2つのデーターベースがあります。 業務マスターは共有のサーバーの中にあり、得意先テーブルをリンクして、それをもとに得意先フォームを作りました。 非連結のテキストボックス(txt検索)と非連結のリストボックス(一覧)がり、リストボックス(一覧)のクエリ得意先の抽出に使うフィールドの条件に、Like"*"&[Forms]![得意先フォーム]![txt検索]&"*" を入れました。 txt検索に文字を入れ、一覧リストボックスで絞込をし、選ぶとフォームに表示されるという流れにしたのですが・・・。 Private Sub txt検索_AfterUpdate() Me![一覧].Requery End Sub Private Sub 一覧_AfterUpdate() Dim rs As Object Set rs = Me.Recordset.Clone rs.FindFirst "[得意先ID] = " & Str(Nz(Me![一覧], 0)) If Not rs.EOF Then Me.Bookmark = rs.Bookmark End Sub [Forms]![得意先フォーム]![txt検索]というパラメータがでて(今まで出たことがない) 文字を入力しても実行できませんでした。参照元が分からないのかなと思いますが、どうしたらうまくいくのか分かりません。どなたかお知恵をかしていただけないでしょうか。Accessは2003を使っています。よろしくお願いします。