Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


28422 / 76738 ←次へ | 前へ→

【53614】Re:Button1回押しも2回押しも同じ結果を出したいのですが・・・
発言  ichinose  - 08/1/24(木) 20:19 -

引用なし
パスワード
   ▼nadatani さん:

こんばんは。

>Buttonを押して
>A列の合計をさせたいのですが、
>4列目が「ABAB」のデータが
>あるときは、A列の数字をマイナスに変えA列の合計をさせたいのです。
>コード「総合計」は
>一回ボタンを押せば「マイナス処理をした合計」になり正解なのですが
>二回ボタンを押すと「マイナス*マイナス処理」→プラスになり最初の合計と
>後の合計に差がマイナス分の2倍が
>生じます。

元データを変えてしまうと、そりゃあ、一回目と2回目では
計算結果が違ってきますよね!!


Sub 総合計1()
  Dim ans As Variant
  Dim i As Integer, rng As Range, pvl As Long
  pvl = Range("F4").Value
  Set rng = Range(Cells(7, 1), Cells(Rows.Count, 1).End(xlUp))
  With rng
    MsgBox "=if(offset(" & .Address & ",0,3,1,1)=""ABAB"",-1*(" & .Address & ")," & _
         .Address & ")" & vbCrLf & "こんな配列数式を評価します"
        
    ans = Evaluate("=if(offset(" & .Address & ",0,3)=""ABAB"",-1*(" & .Address & ")," & _
         .Address & ")")
    End With
  If rng.Row > 5 Then 'この5の意味がわかりませんが、そのままにしておきます
    Range("F4").Value = Application.Sum(ans)
    MsgBox "総合計は" & Format(Range("F4").Value, "#,##0")
    End If

End Sub

0 hits

【53613】Button1回押しも2回押しも同じ結果を出したいのですが・・・ nadatani 08/1/24(木) 19:50 質問
【53614】Re:Button1回押しも2回押しも同じ... ichinose 08/1/24(木) 20:19 発言
【53616】Re:Button1回押しも2回押しも同じ... VBWASURETA 08/1/24(木) 21:19 発言
【53618】Re:Button1回押しも2回押しも同じ... nadatani 08/1/24(木) 22:05 お礼
【53617】Re:Button1回押しも2回押しも同じ... nadatani 08/1/24(木) 22:02 質問
【53635】Re:Button1回押しも2回押しも同じ... ichinose 08/1/27(日) 20:05 発言
【53636】Re:Button1回押しも2回押しも同じ... nadatani 08/1/27(日) 20:27 お礼
【53643】Re:Button1回押しも2回押しも同じ... VBWASURETA 08/1/28(月) 10:03 発言
【53644】Re:Button1回押しも2回押しも同じ... ichinose 08/1/28(月) 20:53 発言

28422 / 76738 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free