マクロで、ピボットテーブルでの毎回可変するデータの最終行までの範囲を指定したいです。どなたかどうぞ教えてください。
列はU列までで固定です。
行が毎回異なります。
どのようにしたら、毎回異なる範囲を指定できますか?
マクロ初心者ですが、なんとか作業効率をUPさせたいと思っています。
どうぞよろしくお願い致します。
どこのマクロを直したらよいのかも教えてください。
自動作成されたVBAは以下の通りです。
Sub 実績集計ピポット()
'
' 実績集計ピポット Macro
'
'
Sheets("実績").Select
Cells.Select
Selection.Delete Shift:=xlUp
Sheets("管理表").Select
Range("A6").Select
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"管理表!R6C1:R28C21", Version:=xlPivotTableVersion14).CreatePivotTable _
TableDestination:="実績!R4C1", TableName:="ピボットテーブル1", DefaultVersion:= _
xlPivotTableVersion14
Sheets("実績").Select
Cells(4, 1).Select
With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("施工業者")
.Orientation = xlColumnField
.Position = 1
End With
ActiveSheet.PivotTables("ピボットテーブル1").AddDataField ActiveSheet.PivotTables( _
"ピボットテーブル1").PivotFields("現場名"), "データの個数 / 現場名", xlCount
With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("受注日")
.Orientation = xlRowField
.Position = 1
End With
ActiveSheet.PivotTables("ピボットテーブル1").TableStyle2 = "PivotStyleMedium9"
ActiveSheet.PivotTables("ピボットテーブル1").ShowTableStyleRowStripes = True
ActiveSheet.PivotTables("ピボットテーブル1").ShowTableStyleColumnStripes = True
ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("受注日").AutoSort _
xlDescending, "受注日"
Range("A6").Select
Selection.Group Start:=True, End:=True, Periods:=Array(False, False, False, _
False, True, False, True)
ActiveWorkbook.ShowPivotTableFieldList = False
End Sub
ご教授お願いします。
No.2ベストアンサー
- 回答日時:
名前定義 可変領域 で検索してみてください。
EXCELではこういった増減する領域を扱うとき
名前定義はひとつのセオリーです。
VBAにおいても定義した領域を
Range(”定義した名前”)で使えますから
複雑に考える必要がないです。
yokomayaさま
いつも大変お世話になり、ありがとうございます。
報告が遅くなりましたが、検索のオートフィルターも教えていただいた通り、試したところ無事出来ました。
おかげさまで素敵な管理表を作成することが出来ました。
Range(”定義した名前”)ですね。
試してみます。
ありがとうございました。
No.1
- 回答日時:
次のコードを↓のようにすればいけると思います。
SourceData:="管理表!R6C1:R28C21"
↓
SourceData:="管理表!A6:U" & Sheets("管理表").Cells(Rows.Count, "A").End(xlUp).Row
ちなみに、毎回、ピボットテーブルを新規作成するのですか?
一度、「データソースの変更」をマクロ記録してみることをお勧めします。たぶん、そっちの方が簡単だと思いますよ。
こんばんは。
ありがとうございました。
コード、ありがとうございました。試してみます。
「データーソースの変更」ですね。こちらも勉強させていただきます。
新たな知識が増えそうです。
感謝申し上げます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) excel ピポットテーブルの更新について 1 2022/05/13 16:12
- Visual Basic(VBA) マクロで最終行を取得してコピーしたい 3 2022/04/06 19:07
- Visual Basic(VBA) エクセル VBA 処理スピードを上げたいのですが。 6 2023/03/31 20:52
- Visual Basic(VBA) エクセルのマクロを使ってメールを送る方法について教えてください 2 2022/03/29 01:36
- Visual Basic(VBA) マクロを短くする 1 2023/01/15 00:11
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする 3 2022/03/23 15:43
- Excel(エクセル) エクセルのマクロでコピー後の貼り付け先を毎回指定したところにしたい 5 2022/08/12 10:47
- Visual Basic(VBA) vbaのエラー対応(実行時エラー7:メモリが不足しています) 4 2023/04/24 00:20
- Visual Basic(VBA) ExcelVBAのマクロについて。 9 2022/05/04 14:50
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
Excel VBA ピボットテーブルにて、 最終行の取得の仕方を教えてください
Excel(エクセル)
-
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
【VBA】ピボットテーブルを既存のシートに作成したい
Excel(エクセル)
-
-
4
エクセル マクロ オートフィルの終点の指定について
Excel(エクセル)
-
5
VBAでのピボットテーブルの範囲指定方法
Visual Basic(VBA)
-
6
【VBA】ピボットテーブルの範囲指定を変数にする
Excel(エクセル)
-
7
エクセルでエラーが出て困っています。
Excel(エクセル)
-
8
複数のピボットテーブルを一括でデータ更新したい
Access(アクセス)
-
9
PivotTableのデータソースを一括変更するVBA
Excel(エクセル)
-
10
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
-
11
VBAでファイルを開くときにファイル名でワイルドカードを使用したいです
その他(プログラミング・Web制作)
-
12
ピボットテーブル最終行から2行目に項目を入れて3行目から新しいピボットテーブルを貼り付けたい。
その他(Microsoft Office)
-
13
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
14
EXCEL 2010 VBAでピボットで複数のアイテムをセルでフィルタ指定
Visual Basic(VBA)
-
15
Excel 2019 のピボットテーブルの更新
Excel(エクセル)
-
16
EXCELで特定のセルに表示された項目をヘッダーやフッターに出力するには
Excel(エクセル)
-
17
エクセルのエラーメッセージ「400」って?
Visual Basic(VBA)
-
18
エクセルVBAでオートフィルター最上行を取得するには
Excel(エクセル)
-
19
WorkBooksをオープンさせずにシートにコピーしたい【EXCEL VBA】
Excel(エクセル)
-
20
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルのマクロについて教え...
-
Excel・Word リサーチ機能を無...
-
特定のPCだけ動作しないVBAマク...
-
エクセルで特定の列が0表示の場...
-
VBAコードについて教えてくださ...
-
Excel マクロ VBA プロシー...
-
一つのTeratermのマクロで複数...
-
メッセージボックスのOKボタ...
-
Excel VBAからAccessマクロを実...
-
エクセルに張り付けた写真のフ...
-
ExcelのVBA。public変数の値が...
-
マクロの記録を使用したマクロ...
-
マクロ実行時、ユーザーフォー...
-
マクロで空白セルを詰めて別シ...
-
Excel_マクロ_現在開いているシ...
-
複数ページあるPDFファイル内の...
-
TERA TERMを隠す方法
-
コマンドボタンに二回目のマク...
-
特定文字のある行の前に空白行...
-
WORD テキストボックスを全ペ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel・Word リサーチ機能を無...
-
特定のPCだけ動作しないVBAマク...
-
エクセルで特定の列が0表示の場...
-
Excel マクロ VBA プロシー...
-
メッセージボックスのOKボタ...
-
一つのTeratermのマクロで複数...
-
ExcelのVBA。public変数の値が...
-
Excel VBAからAccessマクロを実...
-
TERA TERMを隠す方法
-
ExcelVBAでPDFを閉じるソース
-
エクセルに張り付けた写真のフ...
-
EXCELのVBAでRange("A1:C4")を...
-
エクセルで別のセルにあるふり...
-
ソース内の行末に\\
-
マクロ実行時、ユーザーフォー...
-
特定文字のある行の前に空白行...
-
エクセルVBA
-
wordを起動した際に特定のペー...
-
マクロの記録を使用したマクロ...
-
ダブルクリックで貼り付けた画...
おすすめ情報
A列のデータは空白が無いので、A列のデータが入った最終行までを範囲に指定したいです。
ご教授お願いします。