Excel VBA質問箱 IV

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

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


3878 / 76734 ←次へ | 前へ→

【78485】ピボット作成
質問  パニック  - 16/10/6(木) 17:11 -

引用なし
パスワード
   AのBookからあるデータシートを新しいBookにコピーして
ピボットを作成したいです。

毎回、範囲が可変するので変数にいれたいのですがうまくいきません。
欲しい範囲は下記なのですが  
'Range("A3:E3").Select
'Range(Selection, Selection.End(xlDown)).Select

Sheets("1.尺度ごとの集計").Range("A3").CurrentRegionで範囲は大きくなりますが
表毎指定したほうが楽かと思い下記のように書きました。

Setでエラーになります。
または、SourceData:に直接書き込んでもそこでエラーになります。
書き方が間違っているのでしょうか?
ご教示お願いします。

Sub Pivot()
'
'
  Dim src As Range 'データ範囲
'
  Sheets("1.尺度ごとの集計").Select
  Sheets("1.尺度ごとの集計").Copy
  'Range("A3:E3").Select
  'Range(Selection, Selection.End(xlDown)).Select
  Sheets.Add
  
  Set src = Sheets("1.尺度ごとの集計").Range("A3").CurrentRegion
  
  ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:=src _
    , version:=xlPivotTableVersion15).CreatePivotTable _
    TableDestination:="Sheet2!R3C1", TableName:="ピボットテーブル1", DefaultVersion _
    :=xlPivotTableVersion15
  Sheets("Sheet2").Select
  Cells(3, 1).Select
  ActiveSheet.PivotTables("ピボットテーブル1").AddDataField ActiveSheet.PivotTables( _
    "ピボットテーブル1").PivotFields("個人識別番号"), "合計 / 個人識別番号", xlSum
  With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("合計 / 個人識別番号")
    .Caption = "データの個数 / 個人識別番号"
    .Function = xlCount
  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
  ActiveSheet.PivotTables("ピボットテーブル1").TableStyle2 = "PivotStyleMedium5"
  ActiveSheet.PivotTables("ピボットテーブル1").RowAxisLayout xlTabularRow
  ActiveSheet.PivotTables("ピボットテーブル1").ColumnGrand = 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)
End Sub

4 hits

【78485】ピボット作成 パニック 16/10/6(木) 17:11 質問[未読]
【78486】Re:ピボット作成 パニック 16/10/6(木) 19:25 質問[未読]
【78487】Re:ピボット作成 γ 16/10/6(木) 21:06 発言[未読]
【78488】Re:ピボット作成 パニック 16/10/7(金) 9:29 質問[未読]
【78489】Re:ピボット作成 γ 16/10/7(金) 20:36 発言[未読]
【78491】Re:ピボット作成 マナ 16/10/8(土) 13:52 発言[未読]
【78495】Re:ピボット作成 マナ 16/10/9(日) 23:24 発言[未読]
【78496】Re:ピボット作成 パニック 16/10/11(火) 11:23 お礼[未読]

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