人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

1,000ポイントで、抽出条件を指定するAccessフォーム作成できる方!
Accessで、「開始日: 1月4日 〜 終了日: 1月6日」などと指定して、期間内だけ集計して表示させることが実現できません。
「○△にすればいい」というような「方法」ではなく、具体的に実現していただける方、いらっしゃいますか? 解決していただいた方(1名様)には、1,000ポイント贈呈いたします。詳細は
http://www.geocities.jp/rstreaming/215.html

●質問者: radio3
●カテゴリ:コンピュータ
✍キーワード:1月4日 1月6日 access ポイント 作成
○ 状態 :終了
└ 回答数 : 6/6件

▽最新の回答へ

1 ● taka-hr
●0ポイント

http://www.diana.dti.ne.jp/~taka-hr/215.mdb

直してみました。

q_防御率クエリのパラメータ名が間違っていたので変更(f_防御率→f_main)しただけだったと思います。


2 ● きゃづみぃ
●0ポイント

http://www.hatena.ne.jp/awindow?

こういうやり方でOKなら、作成方法を提示します。

開始日と終了日をもつテーブルを作成し、それとリンクさせて 抽出するという方法です。

前の質問をみたとき、別にテーブルを作成していいのか わからなかったので、どうしようかなぁって思ってたのですが、まだ解決されてないようなので、こういうやり方でもいいのかなぁと思って、提案させていただきました。

ちなみに アクセスのバージョンは 2000でいいのでしょうか?

◎質問者からの返答

ちょっとESCキー押すだけで書いていたコメントが全部クリアされてしまい...(TT)

taka-hr様

ありがとうございます!

ただ、こちらでは実行時エラー2501です(OpenFormはキャンセルされました)。修正してみたのですが、結局できませんでした。

taknt様

いつもお世話になっております。

全期間の成績一覧、

指定期間の成績一覧

がカンタンに表示されればOKです。

ただ、zaikkさん提示のstLinkCriteria方式が、あと少しの修正で動作するように見えるのです。

現状は、Openフォーム(クエリ)時に、なぜか日付問合せダイアログが表示されてしまいます。

クエリを修正するだけで完成しそうに感じています。

ただ、こちらではそれができません。いくら直しても成功しないし、クエリ直すたびにフォームも作り直さなければならないので(関連付けられてるはずなのになぜ?)、手に負えません。

防御率2ボタン(stLinkCriteria)方式は、期間指定なしの時にデフォルト値(1900年〜2080年)が表示されない点が優れています。

というわけでして、今夜まで待ってみたいと思います(急いでません)。明日になっても解決できなければ、takntさんの方法でお願いしたいと思います。もちろん、その時点でtakntさんの御気が向いたら、で結構です。

こちらではOffice XPを使用してますが、Access2000で大丈夫だと思います。

215.mdb 更新しました。


3 ● zaikk
●0ポイント

http://www.hatena.ne.jp/dummy?

2005/2/15 12:50頃にダウンロードした215.mdbを確認しました。

防御率2ボタン(stLinkCriteria)方式は、下記の修正で動作するようになります。

1.クエリ[防御率]の下の欄にテーブル[成績]から[日付]フィールドを追加

(Openフォーム(クエリ)時の日付問合せダイアログは、このフィールドを求めています。)

2.フォーム[防御率]のプロパティから並べ替え[防御率.防御率計算]を削除

(ダウンロードした時点で、防御率計算というフィールドはソースに無いようです。)

3.フォーム[防御率]のテキストボックス[防御率計算]のコントロールソースを[防御率]に変更

(ダウンロードした時点で、防御率計算というフィールドはソースに無いようです。)

4.フォーム[防御率]のテキストボックス[日付の最小]のコントロールソースを削除し、[非連結]に変更

(ダウンロードした時点で、日付の最小というフィールドはソースに無いようです。)

この変更でとりあえず動作しますが、出てくる結果は日付単位の防御率となり、御希望の「指定した日付範囲の防御率」にはなりません。

taknt様に提案して頂いた方法を検討することをお勧めします。

(御希望の結果にならなかったため、ポイントは不要です。オープンポイントを使用させてしまい、申し訳有りませんでした。)

◎質問者からの返答

zaikkさま

そうですか。元々実現できない方法だったんですね。残念です。お知らせいただきありがとうございました。オープンポイントは気にしてません。お気遣いありがとうございました。


4 ● miyake_kazu
●0ポイント

http://www.geocities.jp/rstreaming/215.html

まず、防御力計算、日付の最小についてはzaikkさんの回答の通りです。

?クエリーに以下のWHERE句を追加します。

WHERE (((成績.日付) Between [Forms]![f_main]![txt開始日] And [Forms]![f_main]![txt終了日]))

?f_mainフォームの防御率ボタンのイベントを、以下の通りに修正します。

Private Sub cmd防御率_Click()

Dim デフォルト開始日 As Date

Dim デフォルト終了日 As Date

’’ 初期値

デフォルト開始日 = ”1900/01/01”

デフォルト終了日 = ”2900/01/01”

’’ 開始日が指定されなかった場合

If IsNull(Me!txt開始日) Then

txt開始日 = デフォルト開始日

End If

’’ 終了日が指定された時

If IsNull(Me!txt終了日) Then

txt終了日 = デフォルト終了日

End If

’’ フォームを開く

DoCmd.OpenForm ”防御率”, acFormDS

End Sub

一応、これで動くようです。修正した内容をメールしておきましたのでご確認ください。

◎質問者からの返答

ありがとうございます。他の方からも送っていただき、解決できました。


5 ● taka-hr
●0ポイント

http://www.hatena.ne.jp/

はてな

入力せずに防御率ボタンを押したときも

動作しないといけなかったのですね。

再度なおしてみました。

If文で入力欄がNullであればデフォルトの

値を直接入力欄のテキストボックスに設定

しています。

前と同じURLに置いたので今回のURLはダミーです。すみません。

◎質問者からの返答

ありがとうございます。他の方から送っていただき、解決できました。


1-5件表示/6件
4.前の5件|次5件6.
関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ