- ベストアンサー
一つのセルの中に二個のチェックボックスを作りたい
Wendy02の回答
- Wendy02
- ベストアンサー率57% (3570/6232)
私の#6のマクロについて、ご指摘があったようですが、オブジェクトとセルの位置関係は連動し、設定にはある程度、正確さが必要だというだけです。今度は、新たにチェックボックスを取り付ける場合、設定まで自動的に行うマクロを披露します。セルに機械的に納まります。数が数百でも、1秒程度で出来ます。 *Range("B1:B30") 'チェックボックスの範囲 *Const EA '何行おきか?(n -1 )行置き '//標準モジュール Private Const EA As Integer = 2 '* Sub AddFormCheckBoxes() 'チェックボックスの設定マクロ Dim rng As Range Dim i As Long, j As Long Dim aSh As Worksheet If EA = 0 Then Exit Sub Set aSh = ActiveSheet Set rng = aSh.Range("B2:B30") '* rng.EntireColumn.ColumnWidth = 16 With rng j = 1 For i = 1 To .Rows.Count Step EA With .Cells(i, 1) '左側のチェックボックス With aSh.CheckBoxes.Add(.Left + 5, .Top + 1, .Width / 3, .Height / 8) .Name = "CB" & j .Caption = "良い" .OnAction = "CheckBoxes_Click" j = j + 1 End With '右側のチェックボックス With aSh.CheckBoxes.Add(.Left + 50, .Top + 1, .Width / 3, .Height / 8) .Name = "CB" & j .Caption = "悪い" .OnAction = "CheckBoxes_Click" j = j + 1 End With End With Next i End With Set aSh = Nothing Set rng = Nothing End Sub Private Sub CheckBoxes_Click() 'CheckBoxのマクロ Dim n As String Dim myCell As Range Dim i As Long, j As Long, k As Long, m As Long With ActiveSheet m = .CheckBoxes(1).TopLeftCell.Row n = Application.Caller i = Replace(n, "CB", "", , , 1) If i Mod 2 = 0 Then j = i - 1 k = j Else j = i + 1 k = i End If Set myCell = .Cells(Int((k - 1) / 2) * EA + m, 2) If .CheckBoxes("CB" & i).Value = xlOn And _ .CheckBoxes("CB" & j).Value = xlOn Then myCell.Interior.ColorIndex = 38 '赤 ElseIf .CheckBoxes("CB" & i).Value = xlOff And _ .CheckBoxes("CB" & j).Value = xlOff Then '1個 myCell.Interior.ColorIndex = 35 '緑 Else myCell.Interior.ColorIndex = xlNone '色なし End If End With Set myCell = Nothing End Sub 'おまけ Sub ClearCheckBoxes() 'チェックボックスの削除 Dim cb As Object Application.ScreenUpdating = False For Each cb In ActiveSheet.CheckBoxes cb.TopLeftCell.ClearFormats cb.Delete Next cb Application.ScreenUpdating = True End Sub
関連するQ&A
- エクセルのフォームのチェックボックスについて
エクセルのフォームのチェックボックスについて あるセルにフォームのチェックボックスを付け、 そのセルに、true・falseの条件設定をしました。 その設定を利用して、条件式書式の設定で、 trueの時にとなりのセルを赤にするようにしました。 以上のような行が1500行あります。 1つ1つ設定するのが困難のため、 マクロが使えるフォームのチェックボックスを使用しようと試みております。 しかし、マクロ内のVBAの記述方法が解りません。(1行だけなら解ります) ご存知の方がおられましたら教えてください。 よろしくお願いいたします。
- 締切済み
- Visual Basic
- チェックボックス・オンを数えたい
エクセルで作成した表の中の列に 表示→ツールバー→フォームで チェックボックスを作りました。 その列の一番下に、 チェックボックス・オンのセルの数×¥3000を表示させたいのですが、 出来ますでしょうか?
- ベストアンサー
- オフィス系ソフト
- チェックボックスの作り方
エクセルで、申込書を作成しています。 一つのセルの中に、例えば、 ------------------- □青 □赤 □黄色 □緑 □黒 ------------------- のような感じで、チェックボックスを作り、 一つだけ選択可能にしたいのですが、 ヘルプを読んでもさっぱり作り方がわかりません。 どなたか、懇切丁寧に教えてくださいませんでしょうか? よろしくお願いいたします。
- 締切済み
- オフィス系ソフト
- セルの中にもっとも簡単にチェックボックスを置く方法は?
Excel2000を使用しています。 タイトル通りの質問です。いくつものセルにチェックボックスを起きたいと考えています。フォームを使うと大きさが違ったり、なんか違う感じがします。ほかに便利な方法はないですか? 意図することがわかりづらかったら補足致します。
- ベストアンサー
- オフィス系ソフト
- エクセルユーザーフォームのチェックボックスのCaptionにセルの値を入れたい。
表題の通りで、エクセルユーザーフォームにチェックボックスを作成し、そのCaptionにセルの値を入れたい場合、どのようにすればいいのでしょうか。 つまり、シートのセルの値が変われば、ユーザーフォームのチェックボックスの文字が変わっているようにしたいのです。 エクセル2003です。 よろしくお願い致します。
- ベストアンサー
- オフィス系ソフト
- エクセルのチェックボックスについて
エクセルのチェックボックスについて教えて下さい。 シート名が「東京」「名古屋」「大阪」とあります。 各シートのフォームは同じで、チェックボックスが同じセルで各々10個あります。 ここで、「東京」シートの一つのチェックボックスにチェックを入れると、「名古屋」「大阪」の一つのチェックボックスにチェックマークを 入るようにしたいのですが、可能でしょうか? 「名古屋」「大阪」シートに入る位置は「東京」と同じです。
- 締切済み
- オフィス系ソフト
- エクセルのチェックボックスについて教えてください
エクセルのチェックボックスについて質問します。 ネットで調べたところ、下記の様にありました。 (1)[フォーム]ツールバーを表示しておきます。[チェックボックス]ボタンをONにして、ワークシート上でクリックすると、チェックボックスが表示されます。 (2)チェックボックス上で右クリックし、[コントロールの書式設定]をクリックします。 (3)[コントロールの書式設定]のダイアログボックスで、[コントロール]のタブをクリックし、[値]で規定値を設定します。・・・ とありましたが、私の使用しているパソコンでは、コントロールの大やログボックスで[コントロール]タブが見当たりません。 何か特別な設定でもいるのでしょうか? 使用しているエクセルは2003です。 分かる方がいらっしゃいましたら教えてください。よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- Excelチェックボックスのリンクするセル一括
Excelでチェックボックスのリンクするセルを一括設定したいです。 sheet1に複数のチェックボックスを作成し、それぞれのリンクするセルをsheet2に入れたいのですが、チェックボックスが数10個あるので、1つづつやっていると手間がかかります。 例 sheet1のB2のリンクするセルをsheet2のB2 sheet1のB3のリンクするセルをsheet2のB3 sheet1のB4はsheet2のB4 … 一括でやる方法(多分VBA)はわかりますか。
- ベストアンサー
- Excel(エクセル)
- チェックボックスの作成方法について
ワード文書の中にチェックボックスを作るにはどのようにしたらいいのでしょうか。 「表示」メニューの「ツールバー」「フォーム」で作るのでしょうか。これで作ると□の中に×が入るようになりますが、チェックボックスのアイコンにあるように×ではなく、「レ」が入るようにするにはどのようにするのか。また、その都度、チェックの記号を変更できる方法があるのでしょうか。Word初心者ですのでどなたかよろしくお願いします。
- 締切済み
- Windows XP
- エクセル チェックボックスのチェックの判定の書き方
エクセル内にチェックボックス(CheckBox1)を追加したのですが、セルの式にそのチェックが入っているかどうかをifを使って書きたいのですが、どのように書いたらよいのでしょうか。(コントロールツールボックスの書き方)ちなみに式を書くセルのシートとチェックボックスがあるシート(シート名:設定)は別になります。 現在チェックボックスのプログラムにセル内容を変えるように書いているのですが、保護するとだめなのでお願いします。
- ベストアンサー
- オフィス系ソフト