よねさんのWordとExcelの小部屋 なんでも掲示板

HOME HELP 新規作成 新着記事 ツリー表示 トピック表示 検索 過去ログ

[ 最新記事及び返信フォームをトピックトップへ ]

■13163 / inTopicNo.1)  勤務表に斜線を引きたい
  
□投稿者/ ぺこ -(2017/06/03(Sat) 23:26:32)
      よねさん、こんばんは。
      勤務表に斜線を引きたいので、教えて下さい。
    
     
         A列    B列  C〜Eを結合  F  G〜Iを結合   J   ・・・続く  T 
      1.   日付   曜日         勤務時間          時間外              休日
     2.  1      金     :      〜    :              5/2
     3    2      土     :      〜    :              5/3
        3   日     :      〜    :   
    
       この様に1か月の勤務表を作成しています。
       T列の2行目から会社の休日を1年間分入力し、「休日」と名前の定義をしています。
       日付は5/1と入力してセルの書式設定、ユーザー定義でdとして日付のみ表示しています。
    
    
       そこで、A列の日付がT列の会社休日と一致する日は、C列からI列までの勤務時間欄に自動で
       ×になる様に斜線を引きたいのですが、条件付き書式で試みましたが斜線を選択する事が
       できませんでした。
       色々見てみましたが、塗りつぶしの斜め線しか選択できません。
       罫線で右上がり斜め線と左上がり斜め線、両方を引きたいのですが、何か方法は
       ありませんでしょうか。
    
       どうかよろしくお願いいたします。
    
       分かりにくかったらすみません。    
      

引用返信/返信 削除キー/
■13164 / inTopicNo.2)  Re[1]: 勤務表に斜線を引きたい
□投稿者/ よねさん -(2017/06/04(Sun) 10:49:54)
    > 罫線で右上がり斜め線と左上がり斜め線、両方を引きたいのですが、何か方法はありませんでしょうか。
    条件付き書式では無理なようですから、VBAで処理するのはいかがでしょうか。
    とりあえず、休日の中にA列の日付があったら、結合されたC列〜E列に斜線を引きます。
    こんな感じで処理したらいかがでしょう。
    
    Sub test()
    Dim i As Long
    Dim Ans As Boolean
        For i = 2 To 32
            Ans = Application.WorksheetFunction.CountIfs(Range("休日"), Cells(i, 1).Value) >= 1
            If Ans = True Then
                With Range(Cells(i, 3), Cells(i, 5))
        
                    .Borders(xlDiagonalDown).LineStyle = xlContinuous
                    .Borders(xlDiagonalUp).LineStyle = xlContinuous
                End With
            End If
        Next i
    
    End Sub
    

引用返信/返信 削除キー/
■13165 / inTopicNo.3)  Re[2]: 勤務表に斜線を引きたい
□投稿者/ ぺこ -(2017/06/05(Mon) 13:19:36)
      よねさんへ

      早速ありがとうございました。
      線を引くことができました。本当に助かります。

      ずうずうしいついでに、毎月変わるので、新しい月の分を出す時には
      前の月の線を消して、当月該当分を線引くようにしたいのですが、
     
      前の月の線を消すときは、どの様にしたらできますか?

      本当にすみません。よろしくお願いいたします。

引用返信/返信 削除キー/
■13166 / inTopicNo.4)  Re[3]: 勤務表に斜線を引きたい
□投稿者/ よねさん -(2017/06/05(Mon) 13:35:13)
    罫線があるのが C2〜I2セル から C32〜I32セルの場合です。
    こんな感じでいかがでしょうか?
    
    Sub test2()
    Dim i As Long
        For i = 2 To 32
            With Range(Cells(i, 3), Cells(i, 9))
                .Borders(xlDiagonalDown).LineStyle = xlLineStyleNone
                .Borders(xlDiagonalUp).LineStyle = xlLineStyleNone
            End With
      Next i
        
    End Sub
    

引用返信/返信 削除キー/
■13167 / inTopicNo.5)  Re[4]: 勤務表に斜線を引きたい
□投稿者/ ぺこ -(2017/06/05(Mon) 14:44:05)

      よねさんへ

       本当にありがとうございます。

       できました。

       又、宜しくお願いいたします。
引用返信/返信 削除キー/



トピック内ページ移動 / << 0 >>

このトピックに書きこむ

Pass/

HOME HELP 新規作成 新着記事 ツリー表示 トピック表示 検索 過去ログ

- Child Tree -