Access2003で条件を指定してフォームを開く方法
- Access2003でフォームを特定の条件で開く方法について教えてください。
- 現在のSAPコードと品番の両方が一致する場合にフォームを開く条件式が必要です。
- 既存のコードに条件式を追加することで目的のフォームを開くことができます。
- ベストアンサー
Access2003 条件を指定してフォームを開く
アクセス初心者です。 初歩的な質問で本当に申し訳ないんですが、教えてください! 下記コードに条件を追加してフォームを開きたいのですが、どのようなコードを追記すればよろしいでしょうか? 今までは「SAPコード」が一致するものを表示していましたが、それにプラス「品番」も一致するもので条件を変更したいです。 ※今回の対象フォーム名:SCALE メインフォーム名:発注実績 Else ' [SCALE] フォームを開き、現在のSAPコードのSCALEを表示します。 strDocName = "SCALE" strLinkCriteria = "[SAPコード] = Forms![発注実績]![SAPコード]" DoCmd.OpenForm strDocName, , , strLinkCriteria DoCmd.MoveSize (1440 * 0.78), (1440 * 1.8) End If 下記コードに条件式を追記すればいいと思いますが、ちょっと上手くいきませんでした。。。 strLinkCriteria = "[SAPコード] = Forms![発注実績]![SAPコード]" よろしくお願いします!!
- andyno1
- お礼率55% (5/9)
- オフィス系ソフト
- 回答数1
- ありがとう数2
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
以下ではどうですか。 strLinkCriteria = "[SAPコード] = Forms![発注実績]![SAPコード]" & " And [品番] = Forms![発注実績]![品番]" & ""
関連するQ&A
- フォームから別フォームを開くには?
こんにちは。 Access2010を使っています。 開いているフォームから別のフォームを開きたいのですが、その後ろ側のみにワイルドカード(「*」マーク)を入れたいのですが、上手くいきません。 いろいろやってみましたが、「メモリ不足です」となってしまい、上手くいきません。下記コードにどのようにしてワイルドカードを入れたらよいでしょうか? DoCmd.OpenForm "開きたいフォーム名", acNormal, "", "[キー名]=[Forms]![開いているフォーム名]![キー名]", , acNormal ご教授よろしくお願い致します。
- 締切済み
- その他MS Office製品
- Access 複数条件のフィルタ
フォーム[F_MENU]に非連結のテキストボックス検索用A~Cで3つあります。 検索用A 検索用B 検索用C AかつBかつCという全件一致でフィルターをかけてフォーム[詳細]を開きたいのですが DoCmd.OpenForm "F_詳細", , , "A = '" & Forms!F_MENU!検索用A & "'" And "B = '" & Forms!F_MENU!検索用B & "'" And "C = '" & Forms!F_MENU!検索用C & "'" とやると、実行時エラー'13':型が一致しません。 と出てしまいます。 Aだけ、Bだけ、Cだけ、それぞれひとつずつ書けば、エラーなく結果が得られます。 DoCmd.OpenForm "F_詳細", , , "A = '" & Forms!F_MENU!検索用A & "'" DoCmd.OpenForm "F_詳細", , , "B = '" & Forms!F_MENU!検索用B & "'" DoCmd.OpenForm "F_詳細", , , "C = '" & Forms!F_MENU!検索用C & "'" おそらくANDの使い方が誤っていると思うのですが、添削お願いいたします。 全てのテキストボックス及び元テーブルのデータ型はテキスト型です。 条件は3つとも完全一致のみで、検索用ABC、F_詳細のABCそれぞれのカラムにNULL値はありません。 よろしくお願いします。
- ベストアンサー
- その他MS Office製品
- MSアクセス 条件に合うデータのみを抽出してフォームを開けたい
アクセスの初心者です。ご指導よろしくお願いします。 フォームで条件に合うデータのみを抽出してフォームを開けたいと四苦八苦しています。 現在は汎用フォームを使い、パスIDとパスワードを入れて照合するとDoCmd.OpenForm "フォーム名", , , " [社員No] = 1" で[社員No]「1」のデータのみ抽出した別フォームが開くようになっています。 希望としては、照合した人が照合した人が持つ[社員No]のデータのみが開くようにしたいと考えています。 パス管理のテーブルは ID、 社員No、社員名、パスID、パスワードになっています。 DoCmd.OpenForm "フォーム名", , , " [社員ID] = 1" の「=1」のところが[パスID][パスワード]と一致する社員Noに置き換える方法を教えてください。 わかりにくい質問で申し訳ないですが、よろしくお願いします。
- 締切済み
- その他(データベース)
- MSアクセス 条件に合うデータのみの抽出してフォームを開けたい
アクセスの初心者です。ご指導よろしくお願いします。 フォームで条件に合うデータのみを抽出してフォームを開けたいと四苦八苦しています。 現在は汎用フォームを使い、パスIDとパスワードを入れて照合するとDoCmd.OpenForm "フォーム名", , , " [社員No] = 1" で[社員No]「1」のデータのみが開くようになっています。 希望としては、照合した人が照合した人が持つ[社員No]のデータのみが開くようにしたいと考えています。 パス管理のテーブルは ID、 社員No、社員名、パスID、パスワードになっています。 DoCmd.OpenForm "フォーム名", , , " [社員ID] = 1" の「=1」のところが[パスID][パスワード]と一致する社員Noに置き換える方法を教えてください。 わかりにくい質問で申し訳ないですが、よろしくお願いします。
- ベストアンサー
- その他(データベース)
- [Access2000] フォーム間で値の受け渡し
フォームから、DoCmd.OpenFormを使って、 別のフォームを子画面として開くようにしています。 そのときフォーム間で、Functionの引数と戻り値のような感覚で 値の受け渡しをしたいと思っています。 値をわたす方は、OpenFormの引数のいちばん最後にある OpenArgsを使うことでうまく解決できたのですが、 値を返す方のやり方がイマイチわかりません。 DoCmd.OpenForm "フォーム名",,,,OpenArgs (カンマの数が間違ってるかも…とりあえずテキトーです) という記述方法の他に、 DoCmd.OpenForm("フォーム名",,,,OpenArgs) という記述もできるようなんですが、そのようにすると 「=」をつけろ、というようなエラーがその場で出ます。 MsgBoxでも同じようなことが起こりますが、 MsgBoxだと「vbOk」やら「vbCancel」やらを返してくれるので OpenFormでも似たようなことができるのかな…と思うのですが。
- ベストアンサー
- その他(データベース)
- ACCESS 別フォームから別フォームの処理を
ACCESSでメインフォームから別フォームを 【メインフォーム】 DoCmd.OpenForm "FM_商品検索", , , , , acWindowNormal 【商品検索フォーム】 検索画面でJANコードを選んだらJANコードをセットして、商品マスタの読込等の処理をしたい Forms!F_仕入!F_仕入sub.Form!JANコード = Me.JANコード ↑これは動く Forms!F_仕入!F_仕入sub.JANコード_BeforeUpdate ↑これがエラーになります 「オブジェクトは、このプロパティまたはメソッドをサポートしていません。」 でエラーになります。 Forms!F_仕入!F_仕入sub.JANコード_BeforeUpdate Public Sub JANコード_BeforeUpdate(Cancel As Integer) 何がおかしいのでしょうか? 宜しくお願いします
- ベストアンサー
- Access(アクセス)
- Accessクエリの抽出条件にフォームから挿入する方法
Accessフォームのテキストボックスに入力されたデータを、クエリの抽出条件に挿入したいのですが、その際部分一致で検索したいため、抽出条件にLike "*[Forms]![フォーム名]![テキストボックス名]*"と記述したのですがうまく行きません。 どのように記述すれば部分一致で検索できるのかお教えください。
- ベストアンサー
- その他(データベース)
- SelectObjectされているフォーム
vbaで DoCmd.MoveSize 0, 0, 567 * 35, 567 * 30 を実行した際に、 どのオブジェクトに対して行われたかを取得する方法はありますか? SelectObjectされているフォームを Debug.Printで取得するコードを教えてください。
- ベストアンサー
- オフィス系ソフト
- ACCESSのPrintoutメソッドについて
ACCESS2000 コードのPrintoutメソッドですが、条件を指定しても「型が一致しません」とエラーが出ます。 DoCmd.PrintOut stDocName, , , "ID = " & [Forms]!報告書フォーム.Form!ID としています。 条件を指定することは不可能なんでしょうか?それとも記述の仕方に問題があるのでしょうか?
- ベストアンサー
- オフィス系ソフト
お礼
早速のご回答ありがとうございました!! 完璧に上手くいきました~