• ベストアンサー

エクセルVBA ダブルクリックで数字を加算

お世話になります。 エクセルのVBAに関してご質問させてください。 該当セルをダブルクリックするごとに、数字を加算させてゆくようなマクロを組みたいと考えています。 ご存じのかたがおられましたら、なにとぞよろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

割り込ませていただきます。 >列番号の指定方法はどのようにしたらよろしいでしょうか。 排他的範囲の方法もありますが、以下のような方法が分かりやすいのではないかと思います。 #1さんの HasFormula は、数式があるなしの判定ですから、必要に応じて入れてください。 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)  Cancel = True  If Target.Column = 3 Or Target.Column = 5 Then '3列目と5列目   If VarType(Target) = vbDouble Then    Target.Value = Target.Value + 1   End If  End If End Sub   p.s.Excelの枠線には、ショートカットが含まれていますから、なるべく、上下の枠線には触れないようにしてください。カーソルが思わぬ方向に飛ぶことがあります。いろいろ工夫してみましたが、このショートカットをなくす方法が見つかりませんでした。

perikan2
質問者

補足

ありがとうございます! 不思議で面白いですね!枠線をさわるとぴょこぴょことカーソルが飛ぶのですね。 ご教授頂きましたやり方でできました。 ちなみに、これをさらに、範囲を広くする場合ですが、  If Target.Column = ("3:30") みたいな入力で大丈夫なのでしょうか。すみません、素人なもので…。

その他の回答 (2)

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.3

>ちなみに、これをさらに、範囲を広くする場合ですが、 > If Target.Column = ("3:30") If Target.Column = 3 Or Target.Column = 5 Then '3列目と5列目      ↓ If Not Intersect(Target, Columns("C:AD")) Is Nothing Then  とするか、 If Target.Column >= 3 And Target.Column <= 30 Then となります。

perikan2
質問者

お礼

ありがとうございます。 最初に挙げてくださったやり方でやってみたいと思います。 勉強になります。

  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.1

■特定のセル(例はA1)の値を1だけ加算するマクロ Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Target.Address = "$A$1" Then Target.Value = Target.Value + 1 End If End Sub ■選択セルが数値でかつ数式でない場合のみ、1だけ追加するマクロ Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If IsNumeric(Target) And Not Target.HasFormula Then Target.Value = Target.Value + 1 End If End Sub ※加算する数値をセル参照する場合は + 1 を + RANGE("A1") に置き換えてください。

perikan2
質問者

補足

mshr1962様 早速、ご丁寧に2パターンご指導くださり、ありがとうございます!! さらに込み入ったご質問をさせて頂きたいのですが、ダブルクリックにて数値を加算させるセルを、ある列(あるいは複数列)についてのみ実行させたい場合、列番号の指定方法はどのようにしたらよろしいでしょうか。 二重のご質問となり大変恐縮ですが、よろしくお願い致します。

関連するQ&A

  • Excelがダブルクリックで開かなくなりました

    Excelブックがダブルクリックで開かなくなりました。 「ファイル」→「開く」からだと開けるのですが、 ブックを直接ダブルクリックで開こうとすると、空っぽの Excelが立ち上がってしまいます。ネットで調べてみて 「ツール」→「オプション」→「全般」タブの 「ほかのアプリケーションを無視する」のチェックが はずれていることも確認したのですが、ダメでした。 おそらくマクロが関係しているのかなと思い、このカテゴリ に投稿させて頂きました。VBAの知識に乏しい為、自分で 作ったマクロにも関わらず、何が悪いのかわかりません。 VBAでこういう現象が起こりうるケースをご存知でしたら 教えて頂けますでしょうか? 宜しくお願い致します。

  • Excel VBAでマウス移動&ダブルクリックを。

    EcxelでVBAマクロを作成してます。 Excelから、別のウインドウ(Excelではないソフトのウインドウ) をActiveにし、「決まった座標位置へマウスを動かし、そこで、 ダブルクリック」という動作をさせたいのですが、 「座標移動&ダブルクリック」がどうしてもできません。 (その後、コピーペーストをしてExcelに戻します。) ウインドウをActiveにしたり、コピペ等は、Sendkeyで、できたのですが、 どうしても座標移動&ダブルクリックだけができません。 (そのソフト特有で、どうしても、 ダブルクリックしなくてはならない箇所があるのです。) APIなどを使用するとできますでしょうか? Sendkeyでもダブルクリック&マウスの座標移動があるようなので、 試してみましたが、それは、うまくいきませんでした。 何か別の方法をご存知の方がいらっしゃれば、教えていただきたいと思います。 よろしくお願いします。

  • エクセル マクロ ダブルクリックによる設定

    エクセルのマクロについての質問です。 ある特定のセル(”H1:K1”かな?)をダブルクリックすると今日の日付が記入される様になり、また別のセルをダブルクリックするとユーザーフォームが立ち上がる様なマクロを組みたいと考えております。 詳しい方がおりましたら、是非お願いします。

  • VBA 画像ファイル ダブルクリック

    エクセルVBAで以下のことがしたいです。 シート内にある画像ファイル上でダブルクリックをすると その部分にオートシェイプの丸が表示される。 セルをダブルクリックを見かけましたが 画像をダブルクリックでということは可能でしょうか? またこれは可能であればですが 上記のマクロを開始と終了で分けたいです。 開始する前は画像ファイル上でクリックしても丸は挿入されませんが 開始をして終了を押すまでは丸を挿入できるようにしたいです。 これはできなれば大丈夫です。 まずは画像上でのダブルクリック・・・可能かお願いいたします。

  • エクセル VBA セルをクリックすると色が変わる

    いつも皆様には大変お世話になっております。 早速ですが、VBAでセルをクリック(もしくはダブルクリック)するとそのセルの色が変わるといったようなマクロが組めるでしょうか。 色を変えたいのは、A1~A4までの4個のうち1個だけなのでA1がクリックされればA2~A4までは『色なし』にしたいのです。 そんなことは出来るでしょうか? よろしくお願いいたします。

  • エクセルのダブルクリックについて

    エクセルで仕事をしています。前任者から引き継いだシートのセルの内容をダブルクリックすると印刷%レビューの画面になり,印刷範囲も変更になるようなのでこまっています。そのようなマクロか何かがあるのでしょうか?

  • EXCELで、数字が文字列扱いになってしまう

    お世話になります。 なぜだか分からないのですが、 EXCELで、数字が文字列扱いになってしまって、 計算してくれません。 「セルの書式設定」で「表示形式」を、数値や標準にしたり、”,"を付けたりしているんですけど、 反応してくれません。 ただし、該当セルの数字をダブルクリックすると、 数字扱いに代わってくれるようです。 いちいち、全てのセルをダブルクリックするのは、 大変ですし、漏れによる誤差が怖いのですが、 何かいい方法はないでしょうか?

  • エクセル クリックで加算したい

    B1~B4,B6~B8までそれぞれ数値が記入されています。 B1~B4から1つクリック、B6~B8から1つクリックして クリックした和をB10に記載されるようにしたいです。 ================= 例:B4クリック B7クリック  B10=6 ================= この時、クリックしたセルは色を付けておきたいです。 これをC以降のセルも同じような形式で続けていきます。    A  B  C  D     ―――――――― 1│   1  1  ・ 2│   2  2  ・ 3│   3  3  ・ 4│   4  4  ・ 5│ 6│   1  1  ・ 7│   2  2  ・ 8│   3  3  ・ 9│ 10    □  □  ・ 欲を言えばB1~B4,B6~B8にはそれぞれ1つのみの加算にしたいです。 (B1クリックした後に、B3をクリックした時はB1の加算・色ともにキャンセルされる) このようなことはできるでしょうか? 申し訳ありませんがアドバイスをください。 私エクセルの関数はある程度理解しておりますがマクロはほとんど理解しておりません。

  • エクセル VBA

    エクセル VBA セルA1に ”□はい □いいえ”とあり それをダブルクリックすると ?フォームが表示されチェックしますか?と聞きOKなら ■ はい となり   次に続けて ?フォームが表示されチェックしますか?と聞きOKなら ■いいえ となるような マクロの記述は出来るのでしょうか? すいません! 教えてください。

  • Excelマクロ&VBAで一列に3行ごとに数字を入力

    Excelのマクロ&VBAで、例えばA1セルからA120セルに数字1から40を3行ごとに「111・222・333・444・・・・・・・・・・・・393939・404040」と入力する。

専門家に質問してみよう