- ベストアンサー
VBAチェックボックスについて教えて下さい。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
質問の意味を勘違いしていたようです。 1行目が空白でない列に○を入れるということですね? 以下のサンプルはA~F列の1行目が空白で無い場合、2行目に○を入れています。 チェックを外した場合は入れた○を消します。 Private Sub CheckBox1_Click() sData = "" If CheckBox1 = True Then sData = "○" For i = 1 To 6 If Cells(1, i) <> "" Then Cells(2, i) = sData End If Next i End Sub
その他の回答 (2)
- mt2015
- ベストアンサー率49% (258/524)
> つまりチェックボックにチェックを入れるとa~fの中で空欄じゃない箇所に > ◯が入力され、空欄の箇所は◯が入力されないvbaが組めればと思います。 では、こんな感じでしょうか? チェックボックスをクリックすると、A1:F1の空白以外の値を○に置換します。 チェックを外しても○は消えません。 #この用途ならチェックボックスではなく、ボタンの方が良いと思います。 Private Sub CheckBox1_Click() Range("A1:F1").Replace What:="*", Replacement:="○" End Sub
- mt2015
- ベストアンサー率49% (258/524)
こんな感じでしょうか Private Sub CheckBox1_Click() sData = "" If CheckBox1 = True Then sData = "○" End If Range("A1") = sData Range("B1") = sData Range("D1") = sData Range("F1") = sData End Sub
補足
ご回答ありがとうございます。 説明不足でした。 a~fの項目があり、その項目が空欄だったり空欄ではなかったりします。 添付に関してはcとeが空欄になっているので◯がない状況になっています。 つまりチェックボックにチェックを入れるとa~fの中で空欄じゃない箇所に ◯が入力され、空欄の箇所は◯が入力されないvbaが組めればと思います。 説明不足で申し訳ございませんが、よろしくお願い致します。
お礼
ありがとうございます。 うまくいきました!!