Excel VBA質問箱 IV

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

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


9478 / 13646 ツリー ←次へ | 前へ→

【27129】subtotalでエラーが出るのですが reiko 05/7/29(金) 14:10 質問[未読]
【27139】Re:subtotalでエラーが出るのですが Jaka 05/7/29(金) 17:06 発言[未読]
【27143】Re:subtotalでエラーが出るのですが YN62 05/7/29(金) 21:20 発言[未読]

【27129】subtotalでエラーが出るのですが
質問  reiko  - 05/7/29(金) 14:10 -

引用なし
パスワード
   こんにちは。
データが入った表の最終行と最終列を求め、                
データが入力されている範囲を集計したいと思い、                
以下のようなコードを書いているのですが、                
何度やっても『RangeクラスのSubtotalメソッドが                
失敗しました。』というエラーがでてしまいます。                
どこが悪いのか教えていただけないでしょうか?                
よろしくお願いします。                    
                    
-------------------------------------------                    
Sub 機種合計の入力()                    
Dim lon_Limirow As Long                    
Dim tuki As Integer                    
Set wshjisseki = Worksheets("上期実績")                    
                    
wshjisseki.Activate                    
lon_Limirow = wshjisseki.Range("C65536").End(xlUp).Row '最終行の取得                    
tuki = wshjisseki.Range("IV" & lon_Limirow).End(xlToLeft).Column'最終列の取得                    
                    
Range(Cells(5, 2), Cells(lon_Limirow, tuki)).Select                    
Selection.Subtotal GroupBy:=2, Function:=xlSum, _    
TotalList:=Array(6, 10, 14, 18, 22, 26), Replace:=True, PageBreaks:=False, SummaryBelowData:=True                    
                    
End sub

【27139】Re:subtotalでエラーが出るのですが
発言  Jaka  - 05/7/29(金) 17:06 -

引用なし
パスワード
   こんにちは。

一応、
B5:AS5  に適当な項目名を書き
B6:AS15 に適当な数字をビッシリ入れて動かしてみましたが、
動かした結果は、合っているの解りませんが動きました。

データ、レイアウトなども、再現できるように記載された方が良いと思います。

【27143】Re:subtotalでエラーが出るのですが
発言  YN62  - 05/7/29(金) 21:20 -

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

今晩は。
指定範囲でのSubtotalはいけますが、汎用的ではなさそうな感じがしっますが?
サブトータルの目的のようなものや、表の概略が分かればもっと色々な回答が
寄せられると思います。

小生なりに推測してのサブトータルをしてきます。

Sub 機種合計の入力()

Dim lon_Limirow As Range
Cells(65536, 3).End(xlUp).Select
Set lon_Limirow = Range(Selection, Selection.End(xlToRight))
lon_Limirow.Offset(1, 0).FormulaR1C1 = "=SUBTOTAL(9,R[-" & lon_Limirow.Row & "]C:R[-1]C)"     
    
End Sub

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