Excel VBA質問箱 IV

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

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


37383 / 76738 ←次へ | 前へ→

【44523】Re:小計・合計を求める…修正してみたのですが
発言  ichiro  - 06/11/20(月) 15:15 -

引用なし
パスワード
   おしえてください。
G列の計算値は表示出来るのですが
A列に小計or合計が出ませんどこか間違っているのでしょうか

Option Explicit
Private Sub CommandButton1_Click()
With ActiveCell
    If .Column <> 7 Or .Value <> "" Then
      MsgBox "セルの場所が不適切です"
      Exit Sub
    End If
End With

Dim i As Long
Dim r As Long
Dim myRes As Variant

r = ActiveCell.Row

myRes = MsgBox("小計なら はい、合計なら いいえを選んでください", vbYesNoCancel)
If myRes = vbYes Then
For i = r - 1 To 1 Step -1
  If Cells(i, 1).Value = "小計" Or Cells(i, 1).Value = "合計" Or Cells(i, 1).Value = "品    名" Then
  If i = r - 1 Then
    MsgBox ("計算する行がありません")
  Else
    Cells(r, 7).Value = "=sum(G" & i + 1 & ":G" & r - 1 & ")"
    Cells(r, 1).Value = "小計"
  End If
    i = 1
  End If
Next

ElseIf myRes = vbNo Then
For i = r - 1 To 1 Step -1
  If Cells(i, 1).Value = "合計" Or Cells(i, 1).Value = "品    名" Then
  If i = r - 1 Then
    MsgBox ("計算する行がありません")
  Else
    Cells(r, 7).Value = "=sumif(A" & i + 1 & ":G" & r - 1 & ",""小計"",G" & i + 1 & ":G" & r - 1 & ")"
    Cells(r, 1).Value = "合計"
  End If
    i = 1
  End If
 Next
  End If
End Sub
下記を元に上記のように修正してみたのですが

ご指導お願いします。

>  A   B    C    D     E     F
>1  品名    形式      呼称    数量    単 価    金 額
>2 ○○             100    1,250    125,000
>3 △△            250    100     25,000
>4 ■□            120    2,200    264,000
>                    
>  :                    
>  :                    
>  :                    
>11 ××            110    150    16,500
>12 ●◎            300    15     4,500
>
>
>  A   B    C    D     E     F
>1  品名    形式      呼称    数量    単 価    金 額
>2 ○○             100    1,250    125,000
>3 △△            250    100     25,000
>4
>5 ■□            120    2,200    264,000
>6 小計                    414,000
>  :                    
>  :                    
>  :                    
>11 ××            110    150    16,500
>12 ●◎            300    15     4,500
>13  小計                   21,000
>
>
>  合計                   454,000
>
>任意の行の小計を算出(コマンドボタン1)『小計』
>上記表はF列ですが汎用性を持たせる為にクリックして列を決めたい。
>MsgBox "小計の列をクリック。"
>次にMsgBox "小計の行をクリックしなさい。"上の表の場合A6をクリック
>F13に414,000と(数式記入)表示させる。
>
>次に小計を出す場合は列は上記で
>指定してあるので(コマンドボタン2)『小計2』
>MsgBox "小計の行をクリック。"
>A13をクリック
>前回の小計を探して
>MsgBox "小計の範囲はF6からF12です。" ,4
>F13に 21,000を(数式記入)表示
>これを何度か実行し
>
>最後に合計
>アクティブせるから(仮にA100[任意])の場合A100に"合計"と
>記入しF2:F99までの
>小計行のF列をsumする。
>-------------------------------------------------------------------
>A101以降同様に上記作業が実行され
>
>最後に総合計(仮に)A500に
>合計行のTOTALを出したいのですがVBAで組めますか。?
>
>よろしくお願いします。
>
>下記コードを参考に考えたのですがVBA初心者ではなかなか
>思い通りになりませんでした。
>Option Explicit
>Private Sub CommandButton1_Click()
>With ActiveCell
>    If .Column <> 2 Or .Value <> "" Then
>      MsgBox "セルの場所が不適切です"
>      Exit Sub
>    End If
>End With
>
>Dim i As Long
>Dim r As Long
>Dim myRes As Variant
>
>r = ActiveCell.Row
>
>myRes = MsgBox("小計なら はい、合計なら いいえを選んでください", vbYesNoCancel)
>If myRes = vbYes Then
>For i = r - 1 To 1 Step -1
>  If Cells(i, 1).Value = "小計" Or Cells(i, 1).Value = "合計" Or Cells(i, 1).Value = "計" Then
>  If i = r - 1 Then
>    MsgBox ("計算する行がありません")
>  Else
>    Cells(r, 2).Value = "=sum(B" & i + 1 & ":B" & r - 1 & ")"
>    Cells(r, 1).Value = "小計"
>  End If
>    i = 1
>  End If
>Next
>
>ElseIf myRes = vbNo Then
>For i = r - 1 To 1 Step -1
>  If Cells(i, 1).Value = "合計" Or Cells(i, 1).Value = "計" Then
>  If i = r - 1 Then
>    MsgBox ("計算する行がありません")
>  Else
>    Cells(r, 2).Value = "=sumif(A" & i + 1 & ":B" & r - 1 & ",""小計"",B" & i + 1 & ":B" & r - 1 & ")"
>    Cells(r, 1).Value = "合計"
>  End If
>    i = 1
>  End If
> Next
> End If
>End Sub
0 hits

【44504】小計・合計を求める ichiro 06/11/20(月) 1:47 質問
【44523】Re:小計・合計を求める…修正してみたので... ichiro 06/11/20(月) 15:15 発言
【44524】Re:小計・合計を求める…修正してみたので... ichiro 06/11/20(月) 16:03 発言
【44525】Re:小計・合計を求める…修正してみたので... りん 06/11/20(月) 16:14 発言
【44527】Re:小計・合計を求める…修正してみたので... ichiro 06/11/20(月) 16:22 発言
【44526】Re:小計・合計を求める…修正してみたので... Jaka 06/11/20(月) 16:21 発言

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