[リストへもどる]
一括表示

投稿時間:2004/03/26(Fri) 11:06
投稿者名:kamurin
Eメール:kamurin@hotmail.com
URL :
タイトル:
勤怠表を作りたいのですが
勤怠表を作りたいと思いまして、
Microsoft Calender Control9.0 を使いました。

見た目ですぐに、分かるようにしたかったので、
勤怠状況(1日休み・午前半休・午後半休等)によって、
Calenderの日付の部分を色分けしたいと思ったのです。
(例えば1日休み=赤・午前半休=緑・午後半休=黄)
プロパティをイロイロ触ったのですが、
日にち単位で色を変える(1日は赤4日は緑とか)ことが出来なくて(分からなくて)質問しました。

何かいい方法ないでしょうか?

よろしくお願いします。

追記:Microsoft Calender Control9.0に拘りはありません。
   形が同じなら違うモノを使ってもいいです。

投稿時間:2004/03/26(Fri) 17:23
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re: 勤怠表を作りたいのですが
MSFlexGrid を使ってBMP 等を表示した方がいいかと思うのですが?
そうすれば、何人でも、何ヶ月分でも表示できるかと思います。
(Excelで作成する場合のイメージを考えて頂いたらいいかと思います)
好みもありますので、 参考までに!

投稿時間:2004/03/26(Fri) 19:42
投稿者名:kamurin
Eメール:kamurin@hotmail.com
URL :
タイトル:
Re^2: 勤怠表を作りたいのですが
有難う御座います。
MSFlexGrid使って見ます。
それで、MSFlexGridだと、表示している月が何曜日から始るかとか、
閏年とか、
クリックしたトコが何年何月何日かとか、
自分で、処理作らないといけない(と思う)ので、
それを簡単に出来ないでしょうか?
宜しくお願いします。

投稿時間:2004/03/26(Fri) 21:15
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re^3: 勤怠表を作りたいのですが
> それを簡単に出来ないでしょうか?
何をもって簡単・複雑と区別するのでしょうか?
(どこで、どのような処理をする場合)
ここのMSFiexGrid関係や日付・時刻・日数関係を見て自分のやりたい事を
工夫して見て下さい。
まず、ご自分でどのような物を作るか考えて下さい。
私のやりたいデザインと貴方のやりたいデザインは違うかと思います。
外観や方法が違えば、目的が一緒でもプログラムは違ってきます。
閏年や曜日・クリックしたセルの日付を求めるのは特に難しい(複雑)事では
ないかと思うのですが(日付・時刻・日数関係をみれば解るかと)

投稿時間:2004/03/29(Mon) 08:52
投稿者名:kamurin
Eメール:kamurin@hotmail.com
URL :
タイトル:
有難うございます
有難うございます

> ここのMSFiexGrid関係や日付・時刻・日数関係を見て自分のやりたい事を
> 工夫して見て下さい。

参考にします。

投稿時間:2004/03/26(Fri) 22:50
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
私が作るなら
Private Sub Command1_Click()
    Dim yy1  As Integer
    Dim mm1  As Integer
    Dim dMax As Integer
    Dim i    As Integer
    yy1 = "2004"
    mm1 = "4"
    dMax = Day(DateAdd("d", -1, DateAdd("m", 1, DateValue(yy1 & "/" & mm1))))
  
    With MSFlexGrid1
        .Cols = dMax + 1
        .FixedCols = 0
        .Rows = 5
        .FixedRows = 2
        For i = 1 To dMax
            .Col = i: .Row = 0
            .CellAlignment = flexAlignCenterCenter
            .Col = i: .Row = 1
            .CellAlignment = flexAlignCenterCenter
            .Col = i: .Row = 2
            .CellAlignment = flexAlignCenterCenter
    
            .TextMatrix(0, i) = i
            .TextMatrix(1, i) = Format$(yy1 & "/" & mm1 & "/" & CStr(i), "aaa")
            If .TextMatrix(1, i) = "日" Then
                .Col = i: .Row = 1
                .CellBackColor = vbRed
            End If
        Next i
            '休日の処理
            Dim Tbl(4) As String
            Dim AddDat   As Variant
            Tbl(4) = "3,10,17,24,29"
            AddDat = Split(Tbl(4), ",")
            For i = LBound(AddDat) To UBound(AddDat)
                .Col = AddDat(i): .Row = 1
                .CellBackColor = vbRed
            Next i

            .TextMatrix(2, 0) = "青木"
            .TextMatrix(2, 1) = "○"
            .TextMatrix(2, 2) = "○"
            .TextMatrix(2, 3) = "×"
            .TextMatrix(2, 4) = "△"
    End With
End Sub

# 上記は完成品ではありません、私の考えの一部をコードに書いただけです。

投稿時間:2004/03/30(Tue) 15:52
投稿者名:kamurin
Eメール:kamurin@hotmail.com
URL :
タイトル:
参考にさせていただきます
返信おそくなってしまいました。
大変有難うございます。
参考にさせていただきます。