Excel VBA質問箱 IV

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

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


28395 / 76732 ←次へ | 前へ→

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

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

こんばんは。返事が遅れました(ちょっと、体調がわるくって)
土日で何とか回復しそうです。


>ご指摘いただいたコードで動かさしていただきました。
>いつも大きな数字をとらえるようです。
>マイナスが発生しないのですが・・・

セルA7から、データが入っているのですよね?

そして、対応するD列に 「ABAB」 が入っていたら+-の符号を付け替えて計算するのですよね?

Msgboxの数式には ちょっと誤りがありましたが、結果は正常に計算されますが・・・。

再度、新規ブックにて(あくまでも新規ブックです)。

標準モジュールに

Sub 総合計1()
  Dim ans As Variant
  Dim rng As Range
  Call mk_sample
  MsgBox "サンプルデータ作成"
  Set rng = Range(Cells(7, 1), Cells(Rows.Count, 1).End(xlUp))
  With rng
    MsgBox "=if(offset(" & .Address & ",0,3)=""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
Sub mk_sample()
  Range("a7:a20").Value = Application.Transpose(Array(1, 2, 3, _
              4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14))
  Range("d20").Value = "ABAB"
End Sub


として、mainを実行してみてください。

サンプルデータもコードで作成していますから、真っ白なシートを
アクティブにして実行してみてください。

セルA7からA20に数値が表示され D20に ABAB 

というサンプルデータにて計算します。

結果は 77と表示されるはずですが、いかがですか?

正しく表示されたら、前回正しく計算されなかった理由を探ってみてください。

尚、

>If rng.Row > 5 Then 'この5の意味がわかりませんが、そのままにしておきます

は、計算データは、A7からですよね?
だとしたら、

私なら、

If rng.Row > 6 Then

こういうコードはよく書きますけどねえ!!

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 発言

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