[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『勤務表』(ちび)
月間の勤務表をつくりたく、主婦が多いため、日々その日の出勤者が変わります。
変わる度、別シートに作成したカレンダーに、その日の出勤者名がてんきされるようにしたいです。
< 使用 Excel:unknown、使用 OS:Windows10 >
表とカレンダー それぞれのシートレイアウトを行、列の情報付きで示されると回答率がアップするとおもうので、まずはそちらを提示してみてはどうでしょうか?
(もこな2 ) 2021/09/01(水) 20:49
Dim WithEvents btn As MSForms.CommandButton Dim tgl() As MSForms.ToggleButton Dim tBox As MSForms.TextBox
Private Sub UserForm_Initialize() Dim lastRow As Long Dim iTop As Long Dim i As Long Set tBox = Me.Controls.Add("Forms.TextBox.1", "DateInputBox") With tBox .Top = 12 .Left = 12 .Width = 120 .Value = Format(Date, "yyyy/mm/dd") iTop = .Top + .Height + 12 End With lastRow = Worksheets(1).Cells(Rows.Count, "A").End(xlUp).Row ReDim tgl(1 To lastRow) For i = 1 To lastRow Set tgl(i) = Me.Controls.Add("Forms.ToggleButton.1", "NameBox" & i) With tgl(i) .Top = iTop .Left = 12 .Width = 80 .Height = 20 .Caption = Worksheets(1).Cells(i, "A").Value iTop = .Top + .Height + 6 End With Next iTop = iTop + 6 Set btn = Me.Controls.Add("Forms.CommandButton.1", "SubmitButton") With btn .Top = iTop .Left = 12 .Width = 120 .Caption = "OK" iTop = .Top + .Height + 6 End With Me.Height = iTop + Me.Height - Me.InsideHeight End Sub
Private Sub btn_Click() Dim SearchRange As Range Dim dValue As Double Dim delimiter As String Dim tmp As String Dim iRow As Variant Dim i As Long
If Not IsDate(tBox.Value) Then Exit Sub dValue = DateValue(tBox.Value) With Worksheets(2) Set SearchRange = .Range("A1", .Cells(Rows.Count, "A").End(xlUp)) End With iRow = Application.Match(dValue, SearchRange, 0) If IsError(iRow) Then Exit Sub
delimiter = " " For i = LBound(tgl) To UBound(tgl) If tgl(i).Value Then tmp = tmp & tgl(i).Caption & delimiter End If Next i If Len(tmp) < 1 Then Exit Sub
tmp = Left(tmp, Len(tmp) - Len(delimiter)) Worksheets(2).Cells(iRow, "B").Value = tmp tBox.Value = Format(dValue + 1, "yyyy/mm/dd") End Sub
試作品です。
ワークシート1のA列にある値をユーザーフォームにトグルボタン一覧で表示します。
OKボタンを押すとワークシート2のA列の中からテキストボックスと同一値を探して
みつかった場合はB列にトグルがONになっている名前を合成した文字列を転記します。
(めざめるパワー) 2021/09/02(木) 10:54
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.