• 締切済み

エクセルのマクロ

一定期間内の数量と価格をチェックするために エクセルでマクロを組みましたが下記のエラーが出てしまいます。 実行時エラー ’1004’ Worksheet クラスのPivot tablesプロパティを取得できません ソースは ' ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _ "データ!R1C1:R1000C19").CreatePivotTable TableDestination:= _ "[価格.xls]ワーク1!R1:R65536", TableName:="ピボットテーブル1", DefaultVersion:= _ xlPivotTableVersion10 ActiveSheet.PivotTables("ピボットテーブル1").AddFields RowFields:=Array("商品CD", _ "データ") With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("数量") .Orientation = xlDataField .Caption = "合計 / 数量" .Position = 1 .Function = xlSum End With With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("単価") .Orientation = xlDataField .Caption = "最大値 / 単価" .Function = xlMax End With Range("B1").Select With ActiveSheet.PivotTables("ピボットテーブル1").DataPivotField .Orientation = xlColumnField .Position = 1 End With End Sub です。 ストップしているのは↓の部分と思われます。 ActiveSheet.PivotTables("ピボットテーブル1").AddFields RowFields:=Array("商品CD", _ "データ") どうすればエラーが回避できるでしょうか。 ご教授お願いします。

みんなの回答

  • pauNed
  • ベストアンサー率74% (129/173)
回答No.1

こんにちは。 >ストップしているのは↓の部分と思われます。 > >ActiveSheet.PivotTables("ピボットテーブル1").AddFields RowFields:=Array("商品CD", との事なので、おそらく『ActiveSheet』が曲者なのでしょう。 PivotTable作成時に、作成先である"ワーク1"がActiveになっていないのではないでしょうか? "データ"シートと"ワーク1"シートは"価格.xls"ブック内にあるのですね? その前提で、ActiveWorkbookやActiveSheetなど、 状況に依存するようなBookやSheetの指定を避けるとして、 With Workbooks("価格.xls").PivotCaches.Add(SourceType:=xlDatabase, _                       SourceData:="データ!R1C1:R1000C19")   With .CreatePivotTable(TableDestination:="ワーク1!R1C1", _               DefaultVersion:=xlPivotTableVersion10)     .AddFields RowFields:=Array("商品CD", "データ")     With .PivotFields("数量")       .Orientation = xlDataField       .Caption = "合計 / 数量"       .Function = xlSum     End With     With .PivotFields("単価")       .Orientation = xlDataField       .Caption = "最大値 / 単価"       .Function = xlMax     End With     With .DataPivotField       .Orientation = xlColumnField       .Position = 1     End With   End With End With ...などとしてみてはどうでしょう。 また、データ元範囲は"データ!R1C1:R1000C19"...のように固定でよいのでしょうか? 可変範囲に対応させるなら SourceData:=Sheets("データ").Range("A1").CurrentRegion ...などとするか、 毎回新規にPivotTableを作成し直すのではなく、 可変範囲の名前定義を使って、更新だけ行うようにする事も検討されてはいかがでしょう。 (参考) http://oshiete1.goo.ne.jp/qa2097393.html また、これは余計な事かもしれませんが、本題材であれば http://oshiete1.goo.ne.jp/c232.html Office系ソフトカテゴリのほうが良かったかもしれませんね。

関連するQ&A

  • ピボットテーブルをマクロで行なうには

    以下3行目が項目でデータレコードが4~588行目迄入っています。(行数は毎回変わります) これをピボットテーブルで 縦列に"分類" 横行に"月" フィールドに"受注額(合計)" としたく以下マクロ記録しましたが次に実行しようとするとうまくいきません。 参考書読むとActiveSheetとEnd(xlUp)を使うのかなと思えたのですが 具体的にどのようしたら良いのか宜しく御願いします。 ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _ "'Aシート'!R3C1:R588C12").CreatePivotTable _ TableDestination:="", TableName:="ピボットテーブル1" ActiveSheet.PivotTableWizard TableDestination:=ActiveSheet.Cells(3, 1) ActiveSheet.Cells(3, 1).Select With ActiveSheet.PivotTables("ピボットテーブル1") .DisplayNullString = False .RowGrand = False .SmallGrid = False End With ActiveSheet.PivotTables("ピボットテーブル1").AddFields RowFields:="分類", _ ColumnFields:="月" With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("受注額(合計)") .Orientation = xlDataField .NumberFormat = "#,##0_ ;[赤]-#,##0 " End With End Sub

  • マクロでピボットテーブルを作成したい

    こんばんは。マクロの自動記録を使って、ピボットテーブルを作成したのですが、記録した時のシート名とデータ範囲で記録されてしまいます。アクティブシートのデータがある範囲をピボットテーブルにしたい時は、どうすれば良いでしょうか? 以下のコードが自動記録で作成したコードです。 ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _ "シート名!R1C1:R1000C30").CreatePivotTable TableDestination:= _ "", TableName:="ピボットテーブル2", DefaultVersion:=xlPivotTableVersion10 ActiveSheet.PivotTableWizard TableDestination:=ActiveSheet.Cells(3, 1) ActiveSheet.Cells(3, 1).Select With ActiveSheet.PivotTables("ピボットテーブル2").PivotFields("商品番号") .Orientation = xlRowField .Position = 1 End With With ActiveSheet.PivotTables("ピボットテーブル2").PivotFields("商品名 ") .Orientation = xlRowField .Position = 2 End With Range("A9").Select ActiveSheet.PivotTables("ピボットテーブル2").PivotFields("商品番号").Subtotals = Array( _ False, False, False, False, False, False, False, False, False, False, False, False) ActiveSheet.PivotTables("ピボットテーブル2").AddDataField ActiveSheet.PivotTables( _ "ピボットテーブル2").PivotFields("数量 "), "データの個数 / 数量 ", xlCount With ActiveSheet.PivotTables("ピボットテーブル2").PivotFields("発送日 ") .Orientation = xlPageField .Position = 1 End With Range("A1").Select ActiveSheet.PivotTables("ピボットテーブル2").PivotFields("発送日 ").Orientation = _ xlHidden With ActiveSheet.PivotTables("ピボットテーブル2").PivotFields("希望時期") .Orientation = xlColumnField .Position = 1 End With

  • エクセルのピボットテーブルのVBAで、データ範囲の選択時に前の範囲を使用したい時

    同一ブック内で同一データ範囲を基に、ピボットテーブルを2つ作成する時、 2つ目のピボットテーブルの範囲選択の時、初めに作ったテーブルを利用する時の 表現の仕方を教えて下さい。 尚作られるブック名前は、あるセルに指定した名前の一部を読み込むものとします。 エクセル2000です。 初めに作ったピボットテーブルの名前は "ピボットテーブル1"です。 自動記録した結果は、ブック名を読み込まず "売上1-4"とした時下記(1)のようになりました。 (1)2つ目のテーブルを作る際の自動記録結果  Sheets("商品別").Select   ActiveSheet.PivotTableWizard SourceType:=xlPivotTable, SourceData:= _ "[売上1-4.xls]得意先別!ピボットテーブル1", TableDestination:= _ "'[売上1-4.xls]商品別'!R3C2", TableName:="ピボットテーブル2" ActiveSheet.PivotTables("ピボットテーブル2").SmallGrid = False ActiveSheet.PivotTables("ピボットテーブル2").AddFields RowFields:=Array("得意先コード", _ "得意先", "データ"), ColumnFields:="売上月", PageFields:="商品名" With ActiveSheet.PivotTables("ピボットテーブル2").PivotFields("売上数量") .Orientation = xlDataField .Caption = "合計 : 売上数量" .Position = 1 .Function = xlSum End With これをブック名を読み込んだかたちで下記(2)のように書いたところ Set ソースデータ元 = "[売上" & Range("F1") & ".xls]得意先別!ピボットテーブル1"の所でとまって 実行時エラー"13"  型が一致しません  とでてしまいました。  (2)読み込み型で作成   Sheets("商品別").Select With ActiveWorkbook With Sheets("操作")    '操作というシートのセル "F1"にブックの名前の一部を示してある   Range("F1").Select Set ソースデータ元 = "[売上" & Range("F1") & ".xls]得意先別!ピボットテーブル1" Set テーブル定義 = "'[売上" & Range("F1") & ".xls]商品別'!R3C2" End With With .Range("B1").Select .PivotTableWizard SourceType:=xlPivotTable, SourceData:=ソースデータ元, TableDestination:=テーブル定義,   TableName:="ピボットテーブル2" ActiveSheet.PivotTables("ピボットテーブル2").SmallGrid = False ActiveSheet.PivotTables("ピボットテーブル2").AddFields RowFields:=Array("得意先コード", _ "得意先", "データ"), ColumnFields:="売上月", PageFields:="商品名"  With ActiveSheet.PivotTables("ピボットテーブル2").PivotFields("売上数量")   .Orientation = xlDataField   .Caption = "合計 : 売上数量"   .Position = 1   .Function = xlSum   End With  End With

  • Excelマクロ ピボットテーブル シート名指定

    お世話になります。 マクロでピボットテーブルを作成しようと思い、一連の動作をマクロ記録しましたところ下記のコードが記録されました。動作は問題ないのですが、ピボットテーブルが作成されるシート名や場所が指定できません。 出来れば、ピボットテーブルを作成するシート名は"ピボット"にして一番右端に配置したいのですが下下記のコードのどこを直せば(または追加)よいのか、どなたかご教授いただけますでしょうか? ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _ "Sheet1!R1C1:R15C4").CreatePivotTable TableDestination:="", TableName:= _ "ピボットテーブル2", DefaultVersion:=xlPivotTableVersion10 ActiveSheet.PivotTableWizard TableDestination:=ActiveSheet.Cells(3, 1) ActiveSheet.Cells(3, 1).Select ActiveSheet.PivotTables("ピボットテーブル2").PivotFields("納品日").Subtotals = Array( _ False, False, False, False, False, False, False, False, False, False, False, False) ActiveSheet.PivotTables("ピボットテーブル2").PivotFields("地区").Subtotals = Array( _ False, False, False, False, False, False, False, False, False, False, False, False) ActiveSheet.PivotTables("ピボットテーブル2").PivotFields("商品").Subtotals = Array( _ False, False, False, False, False, False, False, False, False, False, False, False) ActiveSheet.PivotTables("ピボットテーブル2").AddFields RowFields:=Array("納品日", "地区" _ ), ColumnFields:="商品" ActiveSheet.PivotTables("ピボットテーブル2").PivotFields("出荷数量").Orientation = _ xlDataField ActiveWorkbook.ShowPivotTableFieldList = True よろしくお願い致します。 環境 Windows XP SP3 Excel2003

  • マクロでピボットテーブルを作成

    マクロでピボットテーブを作成したいのですが、範囲指定がうまくいきません。 Workbooks.Open Filename:="C:\出庫実績.csv" Range(Selection, Selection.End(xlDown)).Select Range(Selection, Selection.End(xlToRight)).Select ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _ "出庫実績!R1C1:R458C24").CreatePivotTable TableDestination:="", TableName:= _ "ピボットテーブル1", DefaultVersion:=xlPivotTableVersion10 ActiveSheet.PivotTableWizard TableDestination:=ActiveSheet.Cells(3, 1) ActiveSheet.Cells(3, 1).Select ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("店舗名称").Subtotals = Array( _ False, False, False, False, False, False, False, False, False, False, False, False) ActiveSheet.PivotTables("ピボットテーブル1").AddFields RowFields:="店舗名称" ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("出庫数ケース").Orientation = _ xlDataField 出庫実績csvのデータは日々変わる為、範囲の選択がうまくいかず、ピボットテーブルの合計数が合いません。よろしくお願いします。

  • ピボットテーブルの範囲を可変にしたい

    ピボットテーブルのマクロを作っています。 「発注データ」というシートの隣に新しいシートを追加し そこにピボットテーブルを作成するという内容です。 シート名の「発注データ~」と参照範囲「R1C1:R477C8」の部分が毎回変わるため (列は固定で行数が増減)それに対応した記述にしたいのですが どのように変えたらいいのでしょうか? アドバイスよろしくお願いします。 以下マクロ記録で作成してみました。 Sub pivot() ' pivot Macro Sheets.Add ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _ "発注データ20170202!R1C1:R477C8", Version:=xlPivotTableVersion15). _ CreatePivotTable TableDestination:="Sheet1!R3C1", TableName:="ピボットテーブル1" _ , DefaultVersion:=xlPivotTableVersion15 Sheets("Sheet1").Select Cells(3, 1).Select With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("課") .Orientation = xlColumnField .Position = 1 End With With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("品番") .Orientation = xlRowField .Position = 1 End With With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("製品コード") .Orientation = xlRowField .Position = 2 End With With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("製品名1") .Orientation = xlRowField .Position = 3 End With With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("製品名2") .Orientation = xlRowField .Position = 4 End With With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("棚番号") .Orientation = xlRowField .Position = 5 End With With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("単価") .Orientation = xlRowField .Position = 6 End With ActiveSheet.PivotTables("ピボットテーブル1").AddDataField ActiveSheet.PivotTables( _ "ピボットテーブル1").PivotFields("数量"), "合計 / 数量", xlSum ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("品番").Subtotals = Array( _ False, False, False, False, False, False, False, False, False, False, False, False) ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("製品コード").Subtotals = Array _ (False, False, False, False, False, False, False, False, False, False, False, False) ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("製品名1").Subtotals = Array( _ False, False, False, False, False, False, False, False, False, False, False, False) ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("製品名2").Subtotals = Array( _ False, False, False, False, False, False, False, False, False, False, False, False) ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("箱番").Subtotals = Array( _ False, False, False, False, False, False, False, False, False, False, False, False) ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("単価").Subtotals = Array( _ False, False, False, False, False, False, False, False, False, False, False, False) ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("数量").Subtotals = Array( _ False, False, False, False, False, False, False, False, False, False, False, False) ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("課").Subtotals = Array( _ False, False, False, False, False, False, False, False, False, False, False, False) ActiveSheet.PivotTables("ピボットテーブル1").RowAxisLayout xlTabularRow End Sub

  • マクロを使ってピポットを実行したい

    マクロを使ってピポットを実行したい 下記に書いたのが自動作成したものですが、なぜか実行すると画像の様になります。 そして、毎回実行する行数は違います、違う行数でもできるようにできたら尚すんばらしいです。 月一回作成する資料で、担当者別に作成します。だいた、30人ぐらいですが… ボタンクリックでできる様にしたいのでマクロを使ってます。 Sub ピポット実行() ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _ "Sheet1!C1:C7").CreatePivotTable TableDestination:="", TableName:= _ "ピボットテーブル1", DefaultVersion:=xlPivotTableVersion10 ActiveSheet.PivotTableWizard TableDestination:=ActiveSheet.Cells(3, 1) ActiveSheet.Cells(3, 1).Select ActiveSheet.PivotTables("ピボットテーブル1").AddFields RowFields:=Array("担当者名", _ "得意先2", "メーカー名"), ColumnFields:="売上年月" With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("売上金額") .Orientation = xlDataField .Caption = "合計 / 売上金額" .Function = xlSum End With ActiveWorkbook.ShowPivotTableFieldList = True End Sub なにとぞよろしくお願いいたします まったく同じ資料に実行をする場合は、大丈夫なのですが、少しでも違う資料にするとだめになります。 ピポットの形になっても、絶対に合計でできなかったり(個数などになったりしてします。)

  • ピボットテーブルのマクロでシートを指定、連続

    過去問?も確認しましたが、うまく行きません。 マクロの自動記録で作成し、TableDestination:=Sheets("Sheet1").Range("A1"),、と変更しましたが、 With ActiveSheet.PivotTables("ピボットテーブル1")のところで止まってしまいます。また、最後の行の Application.Run "'Pivot for 東京.xls'!Macro3"は、正しい記述でしょうか?  よろしくお願いします。 Workbooks.Open Filename:= _ "C:\Documents and Settings\ \デスクトップ\Access DB\Pivot for 東京.xls" Sheets("DSG").Select Columns("A:AZ").Select Range("Q1").Activate Selection.Delete Shift:=xlToLeft Range("A1").Select Sheets("GSG").Select Columns("A:AZ").Select Range("P1").Activate Selection.Delete Shift:=xlToLeft Range("A1").Select Sheets("ダート").Select Columns("A:AZ").Select Range("W1").Activate Selection.Delete Shift:=xlToLeft Range("A1").Select Sheets("芝").Select Columns("A:AZ").Select Range("AQ1").Activate Selection.Delete Shift:=xlToLeft Range("A1").Select Windows("Pivot01.xls").Activate Sheets("G").Select Range("E1").Select Range(Selection, Selection.End(xlDown)).Select Range(Selection, Selection.End(xlToRight)).Select ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _ "G!R1C5:R8594C11").CreatePivotTable TableDestination:=Sheets("Sheet1").Range("A1"), TableName _ :="ピボットテーブル1" With ActiveSheet.PivotTables("ピボットテーブル1")  '------------>ここで止まります .NullString = "0" .SmallGrid = False End With ActiveSheet.PivotTables("ピボットテーブル1").AddFields RowFields:="騎手名", _ ColumnFields:=Array("距離", "着順") With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("着順") .Orientation = xlDataField .Caption = "データの個数 : 着順" .Function = xlCount End With Application.CommandBars("PivotTable").Visible = False Windows("Pivot01.xls").Activate Sheets("1").Select Columns("A:DD").Select Selection.Delete Shift:=xlToLeft Sheets("D").Select Range("E1").Select Range(Selection, Selection.End(xlDown)).Select Range(Selection, Selection.End(xlToRight)).Select ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _ "D!R1C5:R9508C11").CreatePivotTable TableDestination:=Sheets("Sheet1").Range("A1"), TableName _ :="ピボットテーブル2" ActiveSheet.PivotTables("ピボットテーブル2").SmallGrid = False ActiveSheet.PivotTables("ピボットテーブル2").AddFields RowFields:="騎手名", _ ColumnFields:=Array("距離", "着順") With ActiveSheet.PivotTables("ピボットテーブル2").PivotFields("着順") .Orientation = xlDataField .Caption = "データの個数 : 着順" .Function = xlCount End With Application.CommandBars("PivotTable").Visible = False Windows("Pivot01.xls").Activate Sheets("1").Select Columns("A:DD").Select Selection.Delete Shift:=xlToLeft Sheets("GSG").Select Range("E1").Select Range(Selection, Selection.End(xlDown)).Select Range(Selection, Selection.End(xlToRight)).Select ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _ "GSG!R1C5:R81C11").CreatePivotTable TableDestination:=Sheets("Sheet1").Range("A1"), TableName _ :="ピボットテーブル3" With ActiveSheet.PivotTables("ピボットテーブル3") .NullString = "0" .SmallGrid = False End With ActiveSheet.PivotTables("ピボットテーブル3").AddFields RowFields:="騎手名", _ ColumnFields:="着順" With ActiveSheet.PivotTables("ピボットテーブル3").PivotFields("着順") .Orientation = xlDataField .Caption = "データの個数 : 着順" .Function = xlCount End With Application.CommandBars("PivotTable").Visible = False Windows("Pivot01.xls").Activate Application.Run "'Pivot for 東京.xls'!Macro3" End Sub

  • マクロでピボットテーブルを作成するには?

    現在、仕事の関係でエクセルを多用しており、 仕事を楽にするためマクロを勉強しています。 インターネットを駆使して、下記のコードを作ってみたのですが、 【】の範囲で「参照が正しくありません」とエラーが出てしまいます。 どこがおかしいかご教授いただけますでしょうか? 自動記録でベースを作った後、範囲の指定を VBA上で行ったつもりです。 データの集計は「A」シートのA~G列まで、行は不定なので、 「A」シートの一番下までのデータを集計するようにしたいです。 縦に「要素」、内容に「金額」を集計するよう、 ピボットを記録しています。 Sub ピボットを行う() ' Range("A1").Select Range(Selection, Selection.End(xlDown)).Select Range(Selection, Selection.End(xlToRight)).Select 【 ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _ "A!Selection.Address").CreatePivotTable TableDestination:="", TableName:= _ "ピボットテーブル1"】 ActiveSheet.PivotTableWizard TableDestination:=ActiveSheet.Cells(3, 1) ActiveSheet.Cells(3, 1).Select ActiveSheet.PivotTables("ピボットテーブル1").SmallGrid = False ActiveSheet.PivotTables("ピボットテーブル1").AddFields RowFields:="要素" With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("金額") .Orientation = xlDataField .Caption = "合計 : 金額" .Function = xlSum End With End Sub よろしくお願いいたします。

  • Withステートメントの使い方

    プログラムの中で単一のシートやセルなど一つの処理内容 に対して一連の処理をする時「With」ステートメントで ひとくくりで記述できます。 と参考書やwebサイトで見ました。 とりあえず自力で作成した構文は完璧では有りませんが 「With」ステートメントを使えるようになりました。 さて以下の2種類の構文ですがマクロの記録で作成されています。 これを簡素化しようと思ったのですが すでにWith~End Withが散乱しています。 これはもう纏めるのは無理なのでしょうか? 私が思うに同じ単語が何回も出てくるので もう少し簡素化できるのではと挑戦しましたが 誤動作になってしまいます。 すでにWith~End Withでくくられていますので そのくくりはやはり崩すと駄目なのでしょうか? くくり内の2行→1行にする程度が限度でしょうか? これはどのようにすれば簡素化できるのか コツを教えてください。 With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("順番") .Orientation = xlColumnField .Position = 1 End With With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("区分") .Orientation = xlColumnField .Position = 2 End With With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("区分名") .Orientation = xlColumnField .Position = 3 End With With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("品番") .Orientation = xlRowField .Position = 1 End With With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("仕入") .Orientation = xlRowField .Position = 2 End With With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("品名") .Orientation = xlRowField .Position = 3 End With With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("棚番") .Orientation = xlRowField .Position = 4 End With (省略) With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("品番") .PivotItems("(空白)").Visible = False End With With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("仕入") .PivotItems("(空白)").Visible = False End With With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("品名") .PivotItems("(空白)").Visible = False End With With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("棚番") .PivotItems("(空白)").Visible = False End With With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("順番") .PivotItems("(空白)").Visible = False End With ActiveWindow.SmallScroll ToRight:=3 With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("親品番") .PivotItems("(空白)").Visible = False End With With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("親品名") .PivotItems("(空白)").Visible = False End With