Board logo

標題: [發問] 樞紐-如何隱藏明細及群組 [打印本頁]

作者: freeffly    時間: 2012-5-16 10:51     標題: 樞紐-如何隱藏明細及群組

我想要對樞紐做兩件事
第一件年月那邊要作群組每3各月作一個群組
第二件科目名稱那邊要做隱藏明細的動作
下面這各程式碼(網路上看到的)比較接近我第二各要的動作
但是我有試著改不知道要怎麼加才能改成我要的
  1. Sub Test()
  2.     Application.ScreenUpdating = False
  3.     Dim PTItem As PivotItem
  4.     For x = 1 To ActiveSheet.PivotTables("樞紐分析表2").PivotFields.Count
  5.         With ActiveSheet.PivotTables("樞紐分析表2").PivotFields(x)
  6.         For Each PTItem In .PivotItems
  7.             PTItem.ShowDetail = True
  8.         Next PTItem
  9.         End With
  10.     Next
  11. End Sub
複製代碼
[attach]10972[/attach]
作者: hugh0620    時間: 2012-5-16 11:42

回復 1# freeffly
    樞紐是一個統計的工具~
    像樓主提出來需求~ 寫VBA比較好還是自行設定會比較快呢~
   
     樞紐操作本身很有彈性~ 若用VBA再去加諸在上面~
     反而有可能在修改哪些資料時~  導致執行錯誤唷~

     若是一些制式的樞紐~ 一次性設定好要顯示的結果即可~
     再加上一個樞紐自行更新資料VBA~ 就很完美囉~

     以上淺見~ 供樓主參考~
作者: freeffly    時間: 2012-5-16 11:47

回復 2# hugh0620


    大大
   我的資料很多
   附件只是其中一小部份
   而且常要變換資料所以需要vba來幫忙
作者: hugh0620    時間: 2012-5-16 11:58

本帖最後由 hugh0620 於 2012-5-16 12:30 編輯

回復 3# freeffly

     Dear  樓主~
                 提供個人的處理方式~  (我還是不會選擇在樞紐上加工~  :lol    )
                 1.在DATA上加一個欄位[季別] 透過函數或是VBA進行加工
                      函數的寫法  在P欄位加季別
                      =VALUE(LEFT(C2,3))&IF(AND(VALUE(MID(C2,5,2))>=1,VALUE(MID(C2,5,2))<=3),"1Q","")&IF(AND(VALUE(MID(C2,5,2))>=4,VALUE(MID(C2,5,2))<=6),"2Q","")&IF(AND(VALUE(MID(C2,5,2))>=7,VALUE(MID(C2,5,2))<=9),"3Q","")&IF(AND(VALUE(MID(C2,5,2))>=10,VALUE(MID(C2,5,2))<=12),"4Q","")     
           
                 2. 在DATA上新增一個欄位 [科目別] 透過函數或是VBA進行加工 隱藏你不需要的資料
                 3. 再去製作樞紐
                 一樣可以達到效果
                  優點:減少了樞紐執行VBA的錯誤機會
                   缺點: 檔案會變大一些
作者: freeffly    時間: 2012-5-16 13:06

回復 4# hugh0620

  大大
我的檔案2萬多筆
20幾m了
如果再用輔助欄可能就不妙
還是謝謝你分享
作者: hugh0620    時間: 2012-5-17 10:28

回復 5# freeffly
     若真的要用vba來設定
      有看到樓主提供的檔案~ 有用[錄製巨集]的方式試作~ 基本上程式碼就是那樣~
      但要先克服兩個問題~
      1. 年月的順序問題~ 因為資料是文字格式~ 所以~ 要三個一個季~
                    時間的先後順序
                    將文字拆成數字年與月 再來判斷季
      2. 分類 會計科目的分類
                     將同一個分類的會計科目放在一起~ 在設定分類~
                     這個要先用手動調整後~ 再設定分類別~
      
      檔案資料大小的問題~ 我有幫你測試過~
      你提供的原始檔~ 我加到30000筆~ 6.77MB
      用vba判斷兩欄的資料~ 7.18MB
      增加的檔案大小並不大~
      
      檔案太大的原因~ 有可能~ data本身的資料就很大 或是 data中串了很多公式
      
      轉個彎~  能快速將資料處理好~  達到所現在需要的結果~
       黑貓白貓~  抓到老鼠的就是好貓唷~~~  ^^
作者: freeffly    時間: 2012-5-17 10:43

回復 6# hugh0620


    沒公式
   因為還有其他樞紐
   目前資料38000筆
   如果砍剩一個樞紐含資料來源也砍掉
   就剩8M
    這各應該是最精簡的情況下
   
   想要知道這方面的vba是因為常做這類的資料
   有時候是新檔不是舊資料擴充
   每次手動挺煩的




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)