[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『スケジュール表の作成』(いとう)
案件リストの案件名・着工日・完成日を入力するだけで、別のシートのスケジュール表に矢印が作成されるようなものを作りたいと思っております。
3年程度のスパンでのスケジュール表を検討しておりますので、1月1列で作成できればと思っていますので、同上の着工日・完成日は月単位で入力致したく、方法をお教えください。
< 使用 Excel:Excel2013、使用 OS:Windows8 >
>案件リストの案件名・着工日・完成日を入力するだけで、別のシートのスケジュール表に矢印が作成されるようなものを作りたいと思っております。
レイアウト、スケジュールイメージでもいいから作ってから質問してみては? ※あとで「日程ダブリが〜!」とか「案件ダブリが〜!」とか出そうだから (GobGob) 2015/11/16(月) 11:51
ご自分で考えられないならば、MS-Projectという製品もありますよ。
買わないまでも、レイアウトの参考にすると良いでしょう。
(???) 2015/11/16(月) 12:00
イメージを貼る方法が分からず、宅ファイルに預けております。
ご確認いただけると幸いです。
https://free.filesend.to/filedn_infoindex?rp=1c2c0f5c94e31b34a98ff18d85e87ebo
一覧表で確認するべき情報が多いため、別シートで考えております。
スケジュール表に必要な情報は案件名と矢印のみですので・・・。
(いとう) 2015/11/16(月) 12:20
とりあえず、2行目以降のA列とB列に日付を入力(表示形式で年月だけにして、入力は日まで含む)してから、以下のマクロを動かしてみてください。
あとは実際のレイアウトに合わせ、ご自由に応用してください。
Sub test() Dim S As Shape Dim dw0 As Date Dim dw1 As Date Dim dw2 As Date Dim i As Long Dim iw As Long
dw0 = WorksheetFunction.Min(Columns("A:A")) dw0 = DateSerial(Year(dw0), Month(dw0), 1)
For Each S In Shapes If (S.Name Like "Right Arrow*") Then S.Delete End If Next
For i = 2 To Cells(Rows.Count, "A").End(xlUp).Row dw1 = DateSerial(Year(Cells(i, "A").Value), Month(Cells(i, "A").Value), 1) dw2 = DateSerial(Year(Cells(i, "B").Value), Month(Cells(i, "B").Value) + 1, 0) iw = DateDiff("M", dw1, dw2) + 1 With Cells(i, "C").Offset(0, DateDiff("M", dw0, dw1)) ActiveSheet.Shapes.AddShape(msoShapeRightArrow, .Left, .Top, .Width * iw, .Height).Select Selection.ShapeRange.Line.Weight = 0.75 Selection.ShapeRange.Fill.ForeColor.SchemeColor = 48 End With Next i End Sub (???) 2015/11/16(月) 17:43
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.