- ベストアンサー
Excelで入力したセルの隣のセルに累計の表示を
- Excelでセルの入力と累計表示を行いたいが、うまくできない。
- VBAコードを使用して入力した値を隣のセルに加算する。
- VBAに詳しくないため、修正方法が分からない。他の解決策も求めている。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
以下のコードなら b,d,e,h列に数値が入力されると 累積列に加算されます。 Private Sub Worksheet_Change(ByVal Target As Range) With Target If .Cells.Count <> 1 Then Exit Sub If IsNumeric(.Value) = False Then Exit Sub If ((.Row < 3) Or (.Row > 6)) Then Exit Sub '3行目から6行目までが対象 '↓b,d,e,h列が対象 If ((.Column = 2) Or (.Column = 4) Or (.Column = 6) Or (.Column = 8)) Then .Offset(0, 1).Value = .Offset(0, 1).Value + .Offset(0, 0).Value End If End With End Sub
その他の回答 (2)
- HohoPapa
- ベストアンサー率65% (455/693)
訂正します。 >以下のコードなら >b,d,e,h列に数値が入力されると >累積列に加算されます。 ↑誤り ↓訂正後 以下のコードなら b,d,f,h列に数値が入力されると 累積列に加算されます。 コードに訂正箇所はありません。
- _kappe_
- ベストアンサー率68% (1587/2313)
「累計」(画像の中の表記だと「累積」)というのは、たとえば7日目の日計をB5に入力したら、1日目~7日目の累計をC5に入力したいということですね。 その場合、1日目~6日目の分のデータはどこにあるのですか? 別シート? 別ファイル? 補足してください。
お礼
補足で間違って入力してしまいました。 VBAW→VBAに訂正します。 また、ご指摘の通り、 画像中の 累積は累計の入力間違いです。訂正します。
補足
ご回答ありがとうございます。 質問についてですが、 どこにもありません。 その必要のないことを求めています。 上記のVBAWを実行すれば、少なくともB⇔C間では実行されます。
お礼
HohoPapaさま ご回答頂いたコードを入力し、VBAを実行すると、見事に期待通りの結果が実現しました。 現在はコードの意味を理解せずに実行していますが、これを機会に勉強したいと思っています。 これで嫌な上司に一泡ふかすことができます。 本当に有難うございました。