シートのセルに入っている値をユーザーフォームのテキストボックスに表示させたいです。
月毎のシートがあり、ユーザーフォームから勤怠登録するアプリを作成しています。
出勤時間、退勤時間、休憩時間、備考をユーザーフォームのテキストボックスに
入力して、該当の月のセルへ値を入れるものです。
(※まだ、ユーザーフォームからセルへ値を登録するプロシージャは作成していません)
例えば、上記のように10月をユーザーフォームでプルダウンで選択したら
セル上に入っている数値や文字(備考)がそれぞれのテキストボックスに表示されるよう
にしたいです(時間修正なども後々加えるため)
恐らくループ文を使うのだと自分では考えていますが、まだいまいち書き方を
理解していないのでご教授頂けると幸いです。
エラーメッセージ
該当のソースコード
Private Sub UserForm_Initialize() '年を設定 cmbYear.AddItem "2021" cmbYear.AddItem "2022" '当年を初期設定←とりあえず先頭 cmbYear.ListIndex = 0 '月を設定 cmbMonth.AddItem "1" cmbMonth.AddItem "2" cmbMonth.AddItem "3" '以下省略 '当月を初期設定←とりあえず先頭 cmbMonth.ListIndex = 0 ' Dim j As Integer '←自分で考えているところ。 'For i = 1 To 31 ' Me.Controls("txtStarttime" & i) = Cells(j, i) 'Next i End Sub Private Sub cmbYear_Change() SetWeekLabel End Sub Private Sub cmbMonth_Change() SetWeekLabel End Sub Private Sub SetWeekLabel() '年月選択した際に曜日の表示を変える Dim intDay As Integer '日付用の変数 For intDay = 1 To 31 If IsDate(cmbYear.Text & "/" & cmbMonth.Text & "/" & Format(intDay)) Then Me.Controls("lblWeek" & Format(intDay)).Caption = _ Format(CDate(cmbYear.Text & "/" & cmbMonth.Text & "/" & Format(intDay)), "aaa") '日付型 (Date) に変換 Else Me.Controls("lblWeek" & Format(intDay)).Caption = "" End If Next End Sub
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
txtStarttime1 = 始業時刻(1日月曜日の部分) 2,3,4,5・・・と31まであります。下記のものたちも同様です。
txtEndtime1 = 終業時刻
txtBreakstart1 = 休憩時間のはじめ
txtBreakend1 = 休憩時間の終わり
txtWorktime1 = 実働時間
txtNote1 = 備考
回答1件
あなたの回答
tips
プレビュー