SSブログ

勤務管理表(改) [コンピューター]

VBAのWorksheet_Change(エクセルのワークシートの値が変化したら起動されるマクロ)について、調べていたら、勤務管理表のマクロに無駄があったかな、と思い。。。

前回の勤務管理表はこちら
http://cheese999.blog.so-net.ne.jp/2014-08-10

ちょっと、変えてみました。

001.jpg

今までのマクロは、出社時刻、退社時刻が入力されたら、for文で1日から31日まで作業時間、残業時間、深夜時間を計算するものでした。

Private Sub Worksheet_Change(ByVal Target As Range)
  If Intersect(Target, Range("出社退社")) Is Nothing Then
    ' 変化が無ければ抜ける
    Exit Sub
  Else
    n = 32 ' 31日の行番号
    For i = 2 To n ' 1日から31日まで
        |
    (作業時間、残業時間、深夜時間の計算)
        |
    Next i
  End If
End Sub

しかし、出社時刻、退社時刻は1日ずつ入力するので、入力の度に31日分の計算をするのは無駄なので、入力された日だけ計算するようにしました。

Private Sub Worksheet_Change(ByVal Target As Range)
  If Intersect(Target, Range("出社退社")) Is Nothing Then
    ' 変化が無ければ抜ける
    Exit Sub
  Else
    i = Target.Row ' 変化したセルの行
    j = Target.Column ' 変化したセルの列
        |
    (作業時間、残業時間、深夜時間の計算)
        |
  End If
End Sub

(PS)会社でOutlookを使っているのですが、受信済みのメールが消失してしまいました。原因はデータファイルが1.5GByteにもなっていて、壊れていました。Outlookって、デフォルトではデータファイルが1つなのですね。フォルダごとにファイルが分かれているのかと勘違いしていました。
[猫]
ヤバイぜ!(20)  コメント(3)  トラックバック(1) 
共通テーマ:日記・雑感

ヤバイぜ! 20

コメント 3

cheese999

「ヤバイぜ!」 ありがとうございます。[__猫]
by cheese999 (2014-09-06 02:16) 

モッズパンツ

昨日、NHKのドキュメント72時間で竜田駅を取り上げておりましたね。いろいろ考えさせられますね。 (^ω^)b

(^ー^)ノシ
by モッズパンツ (2014-09-06 23:28) 

cheese999

モッズパンツさん、
その番組は見ていないのですが。。
希望としては、常磐線を全線復旧させて欲しいです。
でも、それは福島第一原発の廃炉が完了し、除染が済み、放射性廃棄物の最終処分の国民的合意がなされない限り、してはいけないと思います。
一部の政治家、首長によるお祭り騒ぎでは駄目です。他の地域に比べたら、まだまだ高い線量の中で電車の運行に携わるJR職員(運転手、車掌、駅員、保線)の皆さんの健康も心配です。
[__猫]
by cheese999 (2014-09-06 23:53) 

コメントを書く

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字(英大文字の「オー」、英小文字の「ユー」、アラビア数字の「ハチ」、アラビア数字の「イチ」、アラビア数字の「ニ」)を入力してください。

Facebook コメント

トラックバック 1

トラックバックの受付は締め切りました

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。