
エクセルVBAに於いて質問させて頂きます。
タイトルにも書かせていただきましたが、
A列に行数可変のデータ(文字列)があり、
B列に行数可変のデータ(数字)があり、
A列の行数>=B列の行数の条件とき、
A列の最終行+2の位置のA列に文字で合計
A列の最終行+2の位置のB列にsumを表示する場合、
どのようにすれば出来ますでしょうか。
A列の最終行+2の位置のA列に文字で合計は
With Range("A3")
.End(xlDown).Offset(2, 0).Formula = "合計"
End With
でいけると思うのですが、
A列の最終行+2の位置のB列にsumを表示する場合どのようにすればいいのかわかりません。
ご教授のほどお願い致します。
No.4ベストアンサー
- 回答日時:
一番シンプルには
with range("A65536").end(xlup)
.offset(2).value = "合計"
.offset(2, 1).formular1c1 = "=SUM(R3C:R[-2]C)"
end with
などのようにします。
#注意
end(xldown)で下に下ろすと,データがまだ記入されていないなどの場合によく失敗します。
#参考
一回「最終行」を変数で受けてから
dim r as long
r = range("A65536").end(xlup).row + 2
cells(r, "A") = "合計"
cells(r, "B").formular1c1 = "=SUM(R3C:R[-2]C)"
などのように利用した方が,何かと便利な場合も多いので練習してみてください。
ご回答頂きましてありがとうございます。
思惑通りの事ができました。
>end(xldown)で下に下ろすと,データがまだ記入されていない
>などの場合によく失敗します
upとdownの注意を見ていたのにすっかり忘れていました。
確かに、参考のコードの方が今後何かと便利に使えそうな気がしますので、こちらを使用させて頂きたいと思います。
No.3
- 回答日時:
一例です。
With Range("A3").End(xlDown)
.Offset(2, 0).Value = "合計"
.Offset(2, 1).Formula = "=sum(B3:B" & .Row & ")"
End With
No.2
- 回答日時:
こんにちは!
色々やり方はあると思いますが・・・
一例です。
Sub test()
Dim i As Long
i = Cells(Rows.Count, 1).End(xlUp).Row
If Cells(i, 1) = "合計" Then
Range(Cells(i, 1), Cells(i, 2)).ClearContents
End If
With Cells(Rows.Count, 1).End(xlUp).Offset(2)
.Value = "合計"
.Offset(, 1) = WorksheetFunction.Sum(Columns("B"))
End With
End Sub
※ データが変更された場合も対応できるようにしてみました。
参考になりますかね?m(_ _)m
ご回答頂きましてありがとうございます。
思惑通りの事ができました。
確かに、色々な方法が有ることに気づかされました。
勉強になります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 最終列の右へSUM関数を作成するため下記コードを実行しましたが、最終列「10月28日」が上書きされて 3 2022/12/05 20:32
- Excel(エクセル) 【VBA】A列にある連続したデータの1番下に文字列を入力したい 1 2023/01/28 04:40
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Visual Basic(VBA) 追記する列を増やしたい 2つのデータを検索・照合して元データにないデータを下記マクロで商品名を追記し 9 2022/10/05 10:50
- Visual Basic(VBA) ファイル全てを .xlsm に変更したところ、プログラムが途中で落ちてしまっています 17 2022/12/07 12:03
- Visual Basic(VBA) 列の最終行までのセルと1つ隣のセルの合計を別の列に表示 2 2022/07/12 19:50
- Visual Basic(VBA) A列の最終行に合わせて範囲をコピー 2 2022/09/04 19:10
- Visual Basic(VBA) まとめシートから集計シートへA列のコードが一致したら1行コピーするマクロをネット上で見つけました。こ 1 2022/08/30 14:11
- Excel(エクセル) 表示形式、文字列セル(列)に数式を入力するには マクロ 1 2022/09/18 10:53
- Visual Basic(VBA) 集計シートA列のコードと一致する右に並んだシート名(コード)の3行目から10行目をコピーして貼り付け 4 2022/08/18 15:24
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「段」と「行」の違いがよくわ...
-
エクセルで離れた列を選択して...
-
VBAで別ブックの列を検索し、該...
-
VLOOKUPの列番号の最大は?
-
エクセルで複数列の検索をマク...
-
VBAで結合セルを転記する法を教...
-
VBA 指定した列にある日時デー...
-
EXCEL VBA 文字列から電話番号...
-
csvデータの列の入れ替えができ...
-
【Excel VBA】条件を満たすデー...
-
【Excelマクロ】複数列にまたが...
-
Alt+Shift+↑を一括で行うには、...
-
条件付きの標準偏差をVBAを用い...
-
エクセル マクロ 範囲指定で...
-
Excel 区切り位置指定ウィザー...
-
LEFT関数とIF関数の組み合わせ...
-
データシートビューのタイトル...
-
マクロで数値の小さい順に並べ...
-
リストからデータを紐付けしたい
-
土日の列幅の自動変更を教えて...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「段」と「行」の違いがよくわ...
-
エクセルで離れた列を選択して...
-
LEFT関数とIF関数の組み合わせ...
-
VLOOKUPの列番号の最大は?
-
VBA 指定した列にある日時デー...
-
Excelの行数、列数を増やしたい...
-
エクセルのソートで、数字より...
-
列方向、行方向の定義
-
VBAで別ブックの列を検索し、該...
-
エクセル マクロ 範囲指定で...
-
CSVファイルの「0落ち」にVBA
-
エクセルマクロPrivate Subを複...
-
エクセルで最初の行や列を開け...
-
最近急にVBAの処理速度が遅くな...
-
VBA
-
Excel文字列一括変換
-
エクセルで複数列の検索をマク...
-
エクセル マクロ 範囲の値を上...
-
横軸を日付・時間とするグラフ化
-
Alt+Shift+↑を一括で行うには、...
おすすめ情報