No.2ベストアンサー
- 回答日時:
>(マクロを組むようになるのでしょうか)
『「小計」と入力すると』をキッカケにするなら、マクロしかないでしょう。
質問にあるように動作するコードを書いてみました。
表のカタチは、
A1に表題『品名』、B1に表題『数量』、C1に表題『金額』があるとしています。
シート1で実行してみます。
ツール→マクロ→Visual Basic Editor でVBE画面に移り、 表示→プロジェクトエクスプローラでプロジェクトエクスプローラを表示します。プロジェクトエクスプローラのSheet1をダブルクリック。出てきたコードウインドウに下記マクロをコピーして貼り付けます。
ここから
↓
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 1 Then Exit Sub 'A列でなければ何もしない
If Target.Text <> "小計" Then Exit Sub '『小計』と入力されなければ何もしない
Dim curRow As Long '現在行
Dim startRow As Long '小計を開始する行
Dim rw As Long '行カウンタ
curRow = Target.Row
rw = curRow - 1: startRow = 2
'前回の『小計を探す』
While rw > 1
If Cells(rw, 1) <> "小計" Then
rw = rw - 1
Else
startRow = rw + 1: rw = 1
End If
Wend
If startRow > (curRow - 1) Then Exit Sub '『小計』行が続いたら何もしない
'B、C列に算式を書き込む
'数量を書き込む
'Cells(curRow, 2).Formula = "=SUM(B" & startRow & ":B" & (curRow - 1) & ")"
'金額を書き込む
Cells(curRow, 3).Formula = "=SUM(C" & startRow & ":C" & (curRow - 1) & ")"
End Sub
この回答へのお礼
お礼日時:2002/09/13 09:36
早々のご回答をありがとうございました。
できました!(私はコピーしただけですが)マクロ初体験です。
便利ですね。この機会にマクロを勉強してみます。
しかしエクセルって奥が深いですよね。
No.3
- 回答日時:
こんばんは
A B C D
1 品名 数量 単価 金額
2 ** ** *** =IF(B2="","",B2*C2)
3 式
4 ↓
5 ↓
6 ↓
: ↓
式 =IF(A3="小計",SUM(D$2:D2)-SUMIF(A$2:A2,"小計",D$2:D2)*2,IF(B3="","",B3*C3))
で如何でしょうか!
No.1
- 回答日時:
似たようなものでご辛抱できませんか。
テストデータとして下記をA1:c6にいれる。
ミソは分類という(名称は何でも良い)列を設けることです。そして第2行に1をいれる(Aでもアでも良い)。商品の小計を出したいところまで1をフィルハンドルで複写する。本例ではA4行まで1を複写。
同じくA5に2を入れA6まで複写。すると下記の状態になります。本番ではこれを繰り返す。
分類商品数量
1A2
1B3
1C4
2D1
2F2
データ-集計-をクリック。集計の設定のダイアログになる。
グループの基準-分類
集計の方法-合計
集計するフィールド-数量
集計行をデータの下に挿入するを確認して
OKをクリック。結果は下記の通り。
分類商品数量
1A2
1B3
1C4
1 計9
2D1
2F2
2 計3
総計12
「1計」等の表現が「小計」でないが小計という字も入力不要です。A2に東京と内容を打ちこめば東京計となる。
これらは関数SUBTOTALの機能を使っています。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) マクロだと数式が表示される 2 2022/09/10 14:48
- Excel(エクセル) SUBTOTAL SUMIF?? 2 2023/03/16 11:25
- Excel(エクセル) エクセルで値ではなく関数を参照する方法 6 2023/03/19 00:50
- Excel(エクセル) B列に、A列の数字が偶数の場合は1減算した数字、奇数の場合はそのまま数字を自動表示したい 4 2022/04/16 12:01
- Excel(エクセル) エクセルでIF関数中にIFERROR関数を使いたいのですが???? 5 2022/04/08 13:24
- Excel(エクセル) Excelで特定の文字列を判定し計算する数式を教えて下さい。 1 2022/05/01 12:04
- その他(IT・Webサービス) 高速処理可能な表計算ソフトについて ExcelやGoogleスプレッドシートのような表計算ソフトで、 2 2023/04/29 16:06
- Excel(エクセル) エクセル 自動計算 1 2023/01/30 13:28
- Excel(エクセル) エクセルシートの合計の変動 5 2022/04/05 15:56
- その他(Microsoft Office) Excelで時間計算(負) 8 2023/02/26 05:47
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel分数の表示について
-
Excelについての質問です。 B2...
-
EXCELの散布図で日付が1900年に...
-
文字2桁、3桁交じりの文字列...
-
【EXCEL】画像の黄色部分の抽出...
-
マクロエクセルのブロック解除
-
絶対参照
-
Excelで表を作ったところに文字...
-
Excelピボットテーブルの1行目
-
エクセルのクイックアクセスツ...
-
DATE関数で現在の年齢を出した...
-
(マクロ)vlookupの元データを同...
-
PDFの請求明細をエクセルにしたい
-
エクセルのクイックアクセスツ...
-
REGEXREPLACE関数について、
-
職場の人から聞かれており、こ...
-
エクセルの空欄をつめて、次の...
-
ユーザー定義関数をアドイン登...
-
EXCELの質問です 119から足した...
-
エクセルの問題です。絶対値の...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
半角カタカナをヘボン式ローマ...
-
(マクロ)vlookupの元データを同...
-
エクセルで上位バイトのセルと...
-
exselの質問です
-
Excel 大小比較演算子による「...
-
Excel VBについての質問です。
-
エクセルの問題です。絶対値の...
-
非表示列の再表示に失敗
-
職場の人から聞かれており、こ...
-
Excel関数-文字列で自動作成さ...
-
Excelデータをコピペして、ペー...
-
ユーザー定義関数をアドイン登...
-
【マクロ】for next構文について
-
エクセルの日付を編集する
-
【マクロ】VLOOKUPにて参照元に...
-
exselで最小数で並び替える関数
-
libre 表計算ソフトの計算がう...
-
エクセルで表
-
エクセルの表で1年間の曜日を...
-
西暦和暦
おすすめ情報