• ベストアンサー

Excelで”A=A+1”のような式を書きたい

例えば ”A1”のセルに”A1+B2”の式を入れたいのです。”A1=A1+B2” マクロは少しできますが、この様な式は関数も見あたらないので visual basicで書かなければいけないのでしょうか その場合はどの様にすれば書けるのでしょうか ツール→マクロ→visual basic editorで 黒いページしか出てきません。

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

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

こんばんは。 >”A1”にデータ数値を入れてENTERを押した時点で >計算結果を出せないでしょうか ワークシートのシートタブを右クリック-コードの表示をクリックで、 画面が変わったら貼り付けます。終わったら、Alt +Q で画面を閉じます。 'シートモジュール Private Sub Worksheet_Change(ByVal Target As Range) 'A1のセルでなかったら除外 If Target.Address(0, 0) <> "A1" Then Exit Sub '数値でなかったら除外 If VarType(Target) <> vbDouble Then Exit Sub  Application.EnableEvents = False  Range("A1").Value = Target.Value + Range("B2").Value  Application.EnableEvents = True End Sub 上記は、単に、A1 + B2 を足しているだけであって、 A1 = A1に入力した値 + 前のA1 + B2 ではないけれど、これで良いのでしょうか?

kitakita-2
質問者

お礼

やったぁ! ありがとう! これで いいんです。これで いいんです。 問題解決です

その他の回答 (4)

  • kamejiro
  • ベストアンサー率28% (136/479)
回答No.4

#3です。 >”A1”にデータ数値を入れてENTERを押した時点で >計算結果を出せないでしょうか  自身、そこまでスキルがないので分かりません。  ENTERでなく、マクロをボタン化して、A1のセルに数を入れた後にボタンをクリックするとマクロが動作するのなら出来ますが…。  その場合なら、作図でボタンを作り、そのボタンを右クリックで、「マクロの登録」でボタンとマクロを関連付けをすると出来ますが…。

kitakita-2
質問者

お礼

いやー!有り難う 御座います 回答の通りですね ボタンを作っておいて、マクロを実行する方法ですね この方法でいきます。

  • kamejiro
  • ベストアンサー率28% (136/479)
回答No.3

A1のセルに=A1+B2の式を入れると、循環参照となり、エラーになります。 VBAなら、 Sub Macro1()   Range("A1") = Range("A1") + Range("B2") End Sub ってことですか?。 ツール→マクロ→マクロ 適当にマクロ名を決めて→作成 ここで、上記の Range("A1") = Range("A1") + Range("B2") と入れるってことで良いのでしょうか?。

kitakita-2
質問者

お礼

有り難う 御座います 出来ました これはマクロを実行しなければ結果が出ないですが ”A1”にデータ数値を入れてENTERを押した時点で 計算結果を出せないでしょうか 更なるご指導願えれば、有り難いです

回答No.2

普通にやると循環参照のエラーが出るかも知れませんが、「反復計算」の回数を設定することで回避できるようですね。 ただ、A1には計算式を入れているので初期値はゼロにしかならないと思いますが。 http://www.geocities.jp/kuma_pooh1958/jyunkan/ref001.htm

回答No.1

A1のセルに =a1+b2

関連するQ&A