- 締切済み
エクセル クリック式カウントボタン
携帯から失礼します。 エクセル2013を使用しています。 ボタン式で、押した回数をカウントして表示させるような機能ありますか? 例えばサイコロを100回振って、各出目をカウントするといったことを行いたいです。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- tom04
- ベストアンサー率49% (2537/5117)
No.3です。 たびたびごめんなさい。 前回のコードではエラーが発生しますので、前回のコードはすべて削除して ↓のコードに変更してください。 尚、100回以上の場合はサイコロが振られた回数を表示するようにしてみました。 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) 'この行から If Intersect(Target, Range("A2:A7")) Is Nothing Then Exit Sub Cancel = True With Target .Offset(, 1) = .Offset(, 1) + 1 End With If WorksheetFunction.Sum(Range("B2:B7")) >= 100 Then MsgBox WorksheetFunction.Sum(Range("B2:B7")) & "回振られました" End If End Sub Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean) If Intersect(Target, Range("A2:A7")) Is Nothing Then Exit Sub Cancel = True With Target .Offset(, 1) = .Offset(, 1) - 1 End With End Sub 'この行まで どうも失礼しました。m(_ _)m
- tom04
- ベストアンサー率49% (2537/5117)
こんにちは! >ボタン式で、押した回数をカウントして表示させるような機能ありますか? オートシェイプやコマンドボタン、ユーザーフォームを使う方法がありますが、 今回は直接セル上でダブルクリックする方法です。 ↓の画像のような表を作成しておきます。 A2~A7セルがサイコロの出た目として、 そのセル上で「ダブルクリック」するとB列の回数が1回ずつプラスされ、 間違った場合のコトを考慮し、右クリックで1ずつマイナスするようにしてみました。 画面左下の操作したいSheet見出し上で右クリック → コードの表示 → VBE画面のカーソルが点滅しているところに ↓のコードをコピー&ペースト → Excel画面に戻り A2~A7セルをダブルクリックまたは右クリックしてみてください。 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) 'この行から If Intersect(Target, Range("A2:A7")) Then Cancel = True With Target .Offset(, 1) = .Offset(, 1) + 1 End With End If End Sub Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean) If Intersect(Target, Range("A2:A7")) Then Cancel = True With Target .Offset(, 1) = .Offset(, 1) - 1 End With End If End Sub 'この行まで ※ 最初に書いたように、オートシェイプ・コマンドボタン等を6個挿入し 一つ一つにコードを割り当てれば同様の操作も可能です。m(_ _)m
- kybo
- ベストアンサー率53% (349/647)
そんな機能がエクセルにあるかないかでいうと、ありません。 VBA等で自作するしかなさそうです。
- aokii
- ベストアンサー率23% (5210/22062)
メニューバーで右クリックから「フォーム」をクリックします。 「スピンボタン」を押して、作図し、スピンボタンで右クリックして「コントロールの書式設定」で、 リンクするセルに、表示させるセル番号を指定します。 その際に、最大数や増分値をいくつにするか等の指定が出来ます。 これで、このスピンボタンの▲を押せば「増分」、▼を押せば「減算」された数値が表示されます。