Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


4566 / 13644 ツリー ←次へ | 前へ→

【55739】時間測定表示の文法 まさっぴ 08/5/18(日) 1:02 質問[未読]
【55742】Re:時間測定表示の文法 りん 08/5/18(日) 7:18 回答[未読]
【55877】Re:時間測定表示の文法 まさっぴ 08/5/21(水) 18:07 質問[未読]
【55827】Re:時間測定表示の文法 まさっぴ 08/5/20(火) 18:09 お礼[未読]
【55894】Re:時間測定表示の文法 まさっぴ 08/5/22(木) 14:50 質問[未読]
【55905】Re:時間測定表示の文法 りん 08/5/23(金) 3:56 発言[未読]

【55739】時間測定表示の文法
質問  まさっぴ  - 08/5/18(日) 1:02 -

引用なし
パスワード
   コマンドボタンで時間を測定するVBAの文法なんですが、

コマンドボタン1.を押す→測定スタートさせる
コマンドボタン2.を押す→測定の時間を表示させる

コマンドボタン1.を押す→測定を再開させる
コマンドボタン2.を押す→測定の時間を表示させる

ようにしたいのですが
timerをつかって文法を作成すると、ボタン2.からボタン1.を押して再開させるまでの無駄な時間まで、測定時間に加算してしまいます。

なにか、時間をうまく表示させるために時間表示の単語や文法はないでしょうか・・

【55742】Re:時間測定表示の文法
回答  りん E-MAIL  - 08/5/18(日) 7:18 -

引用なし
パスワード
   まさっぴ さん、おはようございます。
>コマンドボタン1.を押す→測定スタートさせる
>コマンドボタン2.を押す→測定の時間を表示させる
>
>コマンドボタン1.を押す→測定を再開させる
>コマンドボタン2.を押す→測定の時間を表示させる

Timerではなくて、Nowで現在時刻を取得して差をとってみました。
UserForm1に、CommandButton1とCommandButton2を配置し、以下をすべて記述。
'/////////////////////////
Dim s1 As Double
Dim t1 As Double
Dim s2 As Double
Private Sub CommandButton1_Click()
  t1 = Now()
  CommandButton2.Enabled = True
  CommandButton1.Enabled = False
End Sub
'/////////////////////////
Private Sub CommandButton2_Click()
  s2 = t1 - Now()
  s1 = s1 + s2
  '
  CommandButton1.Caption = "再開"
  CommandButton1.Enabled = True
  CommandButton2.Enabled = False
  'Result
  MsgBox "今回" & Format(s2, "[h]:nn:ss") & vbCrLf & _
     "累計" & Format(s1, "[h]:nn:ss"), vbInformation
End Sub
'/////////////////////////
Private Sub UserForm_Activate()
  CommandButton1.Caption = "開始"
  CommandButton2.Caption = "停止"
  CommandButton1.Enabled = True
  CommandButton2.Enabled = False
  s1 = 0 '初期化
End Sub
'/////////////////////////
こんな感じです。

【55827】Re:時間測定表示の文法
お礼  まさっぴ  - 08/5/20(火) 18:09 -

引用なし
パスワード
   ありがとうございました。
現在取り組んでるやつに
応用できればなと思っています・・

が、なかなかむずかしいです

またよければアドバイスして下さいね☆


▼まさっぴ さん:
>コマンドボタンで時間を測定するVBAの文法なんですが、
>
>コマンドボタン1.を押す→測定スタートさせる
>コマンドボタン2.を押す→測定の時間を表示させる
>
>コマンドボタン1.を押す→測定を再開させる
>コマンドボタン2.を押す→測定の時間を表示させる
>
>ようにしたいのですが
>timerをつかって文法を作成すると、ボタン2.からボタン1.を押して再開させるまでの無駄な時間まで、測定時間に加算してしまいます。
>
>なにか、時間をうまく表示させるために時間表示の単語や文法はないでしょうか・・

【55877】Re:時間測定表示の文法
質問  まさっぴ  - 08/5/21(水) 18:07 -

引用なし
パスワード
   これに関連しての質問なんですが

時間測定した場合に出た数値を
セルに表示させました。


ここから悩んでいるのですが、

それぞれ分割させたのを
違うコマンドボタンを押した時に一連してそれぞれ流した時に、色分けをしたいのですが・・


20秒→15秒→10秒

と分割

そして、あるコマンドボタンを押した時に

20秒の時このセル内を色表示
そして次に分割した15秒の時に以降した時はそこを色表示する

というようなものを作りたいのですが
なかなか思うような文法ができあがりません

アドバイスよろしくお願いします☆


▼りん さん:
>まさっぴ さん、おはようございます。
>>コマンドボタン1.を押す→測定スタートさせる
>>コマンドボタン2.を押す→測定の時間を表示させる
>>
>>コマンドボタン1.を押す→測定を再開させる
>>コマンドボタン2.を押す→測定の時間を表示させる
>
>Timerではなくて、Nowで現在時刻を取得して差をとってみました。
>UserForm1に、CommandButton1とCommandButton2を配置し、以下をすべて記述。
>'/////////////////////////
>Dim s1 As Double
>Dim t1 As Double
>Dim s2 As Double
>Private Sub CommandButton1_Click()
>  t1 = Now()
>  CommandButton2.Enabled = True
>  CommandButton1.Enabled = False
>End Sub
>'/////////////////////////
>Private Sub CommandButton2_Click()
>  s2 = t1 - Now()
>  s1 = s1 + s2
>  '
>  CommandButton1.Caption = "再開"
>  CommandButton1.Enabled = True
>  CommandButton2.Enabled = False
>  'Result
>  MsgBox "今回" & Format(s2, "[h]:nn:ss") & vbCrLf & _
>     "累計" & Format(s1, "[h]:nn:ss"), vbInformation
>End Sub
>'/////////////////////////
>Private Sub UserForm_Activate()
>  CommandButton1.Caption = "開始"
>  CommandButton2.Caption = "停止"
>  CommandButton1.Enabled = True
>  CommandButton2.Enabled = False
>  s1 = 0 '初期化
>End Sub
>'/////////////////////////
>こんな感じです。

【55894】Re:時間測定表示の文法
質問  まさっぴ  - 08/5/22(木) 14:50 -

引用なし
パスワード
   これに関連しての質問なんですが

時間測定した場合に出た数値を
セルに表示させました。


ここから悩んでいるのですが、

それぞれ分割させたのを
違うコマンドボタンを押した時に一連してそれぞれ流した時に、色分けをしたいのですが・・


20秒→15秒→10秒

と分割

そして、あるコマンドボタンを押した時に

20秒の時このセル内を色表示
そして次に分割した15秒の時に以降した時はそこを色表示する

というようなものを作りたいのですが
なかなか思うような文法ができあがりません

アドバイスよろしくお願いします☆

【55905】Re:時間測定表示の文法
発言  りん E-MAIL  - 08/5/23(金) 3:56 -

引用なし
パスワード
   まさっぴ さん、おはようございます。

説明を読んでも状況がよくわからないのですが、

>時間測定した場合に出た数値を
>セルに表示させました。
この表示させたセルに色をつけたいというなら、
(値を表示させたセル範囲).Interior.Colorindex = (色番号)
と、値を与える時に一緒に設定してはいかがでしょうか。

4566 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free