ユーザーフォームで、checkBoxで選択した値をセルへ転記するマクロコードをご紹介します。
すべてのチェックボックスをループして、
ONになっているものをセルに転記します。
ぜひお試しください!
ユーザーフォーム作成
エクセルにコマンドボタンと、ユーザーフォームを作成します。
マクロコードは、標準モジュール「Module1」に入力します。
Sub ボタン1_Click()
UserForm1.Show vbModeless
End Sub
マクロコードを「Module1」に入力した画面
ユーザーフォーム内部にマクロコードを入力
マクロコードは「UserForm1」に入力します。
Private Sub CommandButton1_Click()
Dim ctrl As Control
'ユーザーフォームのコントロールをループ
For Each ctrl In Controls
'チェックボックスだったら
If InStr(ctrl.Name, "CheckBox") <> 0 Then
'チェックボックスがオンだったら
If ctrl.Value = True Then
'A列の最終行にチェックボックスのCaptionを転記
Cells(Cells(Rows.Count, 1).End(xlUp).Row + 1, 1) = ctrl.Caption
End If
End If
Next ctrl
End Sub
マクロコードを入力する場所「UserForm1」
動作
ユーザーフォームを開きます。
チェックボックスをONにして「転記」をクリックすると、
A列の最終行にチェックボックスのCaptionを転記します。
複数のチェックボックスをONにして、転記することができます。
この記事がお役に立ちますと幸いです。
・【ExcelVBA】ユーザーフォーム作成の事例まとめ
【VBAユーザーフォーム】何ができるの?:使用例34選
...
「たった1秒で仕事が片づくExcel自動化の教科書【増強完全版】」
「5時間かかる作業が3時間でできます」ではなく「1秒で終わらせます」へ
毎日の業務を瞬時に終わらせるしくみを解説
リンク