• ベストアンサー

アクセス97のストップウォッチの数値をクリアできますか?

タイトル通りなのですが、アクセス97でストップウォッチを作りました。 作ったのはいいのですが時間を計った後その値をクリアしたいのです。 フォーム上でコマンドボタンを使ってクリアしたいのですが、 コマンドボタンをコマンドボタンウィザードで作る事ができるでしょうか?

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

  • ベストアンサー
  • arata
  • ベストアンサー率49% (139/279)
回答No.3

単純に Private Sub Clear_Click() Me![開始時間] = "" Me![終了時間] = "" Me![経過時間] = "" End Sub で、いいのでは? ちなみに、この機能だと1ボタンでもいいのでは? Startボタンの表題が"スタート"だとして、 Private Sub Start_Click() Dim stopTime As Single Dim lapseTime As Single Select Case Me![Start].Caption Case "スタート" startTime = Timer Me![開始時間] = startTime Me.Start.Caption = "ストップ" Case "ストップ" stopTime = Timer Me![終了時間] = stopTime lapseTime = stopTime - startTime Me![経過時間] = lapseTime Me![Start].Caption = "クリア" Case "クリア" Me![開始時間] = "" Me![終了時間] = "" Me![経過時間] = "" Me![Start].Caption = "スタート" End Select End Sub とすると・・・・

ask
質問者

お礼

ありがとうございます!!!!!!!!!!!!!! 出来ました♪ そうですよね・・・ 何を難しく考えてたんだろう・・・(汗) すごくすごく嬉しいです♪♪♪ 最近アクセスでいろいろ作らされてて<こんな初心者になんて事をさせるのだ(涙) また、何か分からない事があったらお尋ねする事があるかもしれませんが、 その際もよろしくお願いいたします。 ほんとにほんとにありがとうございました♪

その他の回答 (2)

  • arata
  • ベストアンサー率49% (139/279)
回答No.2

あっ!ごめんなさい。質問の意味を間違えていました。 テキストボックスか、ラベルに表示されているストップウォッチの値を0にするって事ですよね? でしたら、やはりマクロかモジュールで、そのコントロールに値をいれてやればいいかと・・・・ 質問の意味を間違えてますかねえ?

ask
質問者

お礼

ご返答ありがとうございます。 スタートとストップのイベントプロシージャの入力をしたように クリアのコマンドボタンをつくってクリック時のイベントプロシージャに 記述をすればいいって事ですよね?<自信なしなし(涙) で、最初のお応えの際のモジュールの式を入力してみたのですが、 (コマンド名はちゃんと自分のボタンの名前をいれました) ストップウォッチのフォームで実行しても0にならないんです(涙) 訳がわからなくなってきました(涙) もし、よろしければ再度わたしが間違っている所を教えていただけませんでしょうか?

ask
質問者

補足

一応わたしがストップウォッチをつくった時のクラスモジュールです。 Option Compare Database Option Explicit Dim startTime As Single Private Sub Start_Click() startTime = Timer Me![開始時間] = startTime End Sub Private Sub Stop_Click() Dim stopTime As Single Dim lapseTime As Single stopTime = Timer Me![終了時間] = stopTime lapseTime = stopTime - startTime Me![経過時間] = lapseTime End Sub ここにオブジェクト「Clear」(作ったボタンの名前) プロシージャ「Click」を選んで 教えていただいたモジュールの記述を入力してみたんですけれど・・・ 0という表示にならないのです・・・ いかがでしょうか・・・

  • arata
  • ベストアンサー率49% (139/279)
回答No.1

マクロを作っておけば、ウィザードで「マクロの実行」を選択することで、作れます。 って、これは、ウィザードで出来るとは言いませんね(笑い) フォームのタイマーを使っているとして、回答しますが、フォームのタイマー間隔(TimreInterval)を0にするとタイマーは止まりますので、マクロかモジュールで0にしてやります。 □マクロの場合は、  アクション:値の代入  アイテム:[Forms]![フォームの名前].[TimerInterval]  式:0 でマクロを作成保存して、コマンドボタンのウィザードでマクロの実行を指定してください。 □モジュールで実行する場合は、  ボタンのクリック時のイベントで、コードビルダを選択して、作成されたイベントを下記のようにしてください。 Private Sub コマンド9_Click() Me.TimerInterval = 0 End Sub 上記の「コマンド9」は、あなたのコマンドボタンの名前になりますからお間違いなく。

関連するQ&A