パソコン仕事5倍塾
35,000人を指導した東大卒・元日本IBM社内講師が直伝
MENU
浦山大さんの投稿
(投稿ID: 3499)
Sub Yokonarabe() ActiveSheet.UsedRange.Interior.ColorIndex = xlNone ActiveSheet.UsedRange.ClearContents Dim ws As Worksheet Dim daHiduke As Date Dim cMigi As Long Dim loTitle As Long Dim loYoko As Long Set ws = Worksheets("Sheet1") daHiduke = #1/1/2015# cMigi = 2 loTitle = -6 loYoko = -4 Do While Year(daHiduke) = 2015 If Day(daHiduke) = 1 Then loTitle = loTitle + 5 loYoko = loYoko + 5 cMigi = 2 With ws.Range("A1") .Offset(, loTitle + 1).Value = "Date" .Offset(, loTitle + 2).Value = "weekday" .Offset(, loTitle + 3).Value = "memo" .Offset(, loTitle + 4).Value = "comment" .Offset(, loTitle + 2).ColumnWidth = 10.89 .Offset(, loTitle + 3).ColumnWidth = 30 .Offset(, loTitle + 4).ColumnWidth = 20 End With End If ws.Range("A" & cMigi).Offset(, loYoko - 1).Value = daHiduke ws.Range("B" & cMigi).Offset(, loYoko - 1).Value = WeekdayName(Weekday(daHiduke), True) Select Case ws.Range("B" & cMigi).Offset(, loYoko - 1).Value Case Is = "土" ws.Range("A" & cMigi & ":D" & cMigi).Offset(, loYoko - 1).Interior.Color = vbBlue Case Is = "日" ws.Range("A" & cMigi & ":D" & cMigi).Offset(, loYoko - 1).Interior.Color = vbRed End Select daHiduke = DateAdd("d", 1, daHiduke) cMigi = cMigi + 1 Loop End Sub
小川慶一さんのコメント
(コメントID: 4967)
Option Explicit Sub Yokonarabe() ActiveSheet.UsedRange.Interior.ColorIndex = xlNone '[*1] ActiveSheet.UsedRange.ClearContents '[*2] '↓一枚のシートでの話なので、これ不要では? Dim ws As Worksheet Dim daHiduke As Date Dim cMigi As Long Dim loTitle As Long Dim loYoko As Long Set ws = Worksheets("Sheet1") 'アクティブシートが sheet1 でない場合は [*1], [*2] がおかしいですね。 daHiduke = #1/1/2015# cMigi = 2 loTitle = -6 loYoko = -4 Do While Year(daHiduke) = 2015 If Day(daHiduke) = 1 Then '↓インデント不正 loTitle = loTitle + 5 loYoko = loYoko + 5 cMigi = 2 With ws.Range("A1") .Offset(, loTitle + 1).Value = "Date" .Offset(, loTitle + 2).Value = "weekday" .Offset(, loTitle + 3).Value = "memo" .Offset(, loTitle + 4).Value = "comment" .Offset(, loTitle + 2).ColumnWidth = 10.89 .Offset(, loTitle + 3).ColumnWidth = 30 .Offset(, loTitle + 4).ColumnWidth = 20 End With End If ws.Range("A" & cMigi).Offset(, loYoko - 1).Value = daHiduke ws.Range("B" & cMigi).Offset(, loYoko - 1).Value = WeekdayName(Weekday(daHiduke), True) Select Case ws.Range("B" & cMigi).Offset(, loYoko - 1).Value Case Is = "土" ws.Range("A" & cMigi & ":D" & cMigi).Offset(, loYoko - 1).Interior.Color = vbBlue Case Is = "日" ws.Range("A" & cMigi & ":D" & cMigi).Offset(, loYoko - 1).Interior.Color = vbRed End Select '↓インデント不正 daHiduke = DateAdd("d", 1, daHiduke) cMigi = cMigi + 1 Loop End Sub
外部アカウントで登録
たった1ヶ月で人生が劇的に変わりました
佐藤信さん
役員クラスの方から高い評価を受けるようになりました。
佐賀県 - 岩本徹さん
今までまったく知らなかったショートカットキーを使いまくっています。
東京都 - 鷹觜慶さん
年齢60才間近、営業で外回りの時間が多い私でも退社時間が1-2時間程度早くなりました。
東京都 - 宗内隆明さん
受講前もすでにパソコン得意でしたが、そんな私でも受講して本当に良かったと思えた講座です。
東京都 - 佐伯とも子さん
ここまで包括的に仕事に役立つ深い学びを受けれた講座は初めてでした
東京都 - 飯田倫子さん
2024年04月27日 15:36
2024年04月25日 07:00
2024年04月23日 21:36
2024年04月23日 10:01
2024年04月22日 03:23
2024年04月28日 15:34
2024年04月28日 12:07
2024年04月28日 11:43
2024年04月28日 11:42
2024年04月28日 11:08
2022年02月24日 10:59
2019年12月23日 05:57
2019年09月20日 12:29
表示できる投稿はありません。
この学習サイトの教材制作、サポート、システム開発をすべてやっています。
2022年02月02日 00:00
2022年02月02日 03:00
2022年02月02日 06:00
2022年02月02日 09:00
2022年02月02日 12:00
2024年02月15日 18:30
2024年02月09日 17:05
2024年01月19日 13:00
2023年12月31日 17:00
2023年12月21日 14:00
2024年04月27日 23:02
2024年02月28日 14:53
2024年02月27日 14:27
2024年02月27日 14:21
2024年02月27日 14:15
浦山大さんの投稿
(投稿ID: 3499)
お世話になります。
自分で作成してみました。
なんとか、形に出来ました。
しかし、先生のコードと比べると、
・私のは行列指定の変数が3つある→2つに出来る
・もっとすっきりさせられる(offsetの使い方、With文の使い方)
はまだまだだなあ、と感じました。
2週間前は手も足も出なかったので、
やりきれたことは喜ばしかったです。
引き続き、よろしくお願いします!
小川慶一さんのコメント
(コメントID: 4967)
細かいところだけ指摘しました。