返回列表 上一主題 發帖

[發問] 請問要怎麼用VBA寫出類似樞紐分析的功能

[發問] 請問要怎麼用VBA寫出類似樞紐分析的功能

大家好:
小妹我有個問題想請教大家。
原本我自己錄製樞紐分析來把HR相同名稱的東西,HX欄位數量加總的動作,
然後再把樞紐分析的結果按Ctrl+alt+↓ 貼到HZ & IF欄位,
但是樞紐分析最底下會有一欄合計,可是我不想要有合計這欄,
而且中間的HS~HW欄位資料我還要手動填過去,

所以想問大家要怎麼用VBA寫出類似樞紐分析的功能呢?
我的需求是:當HR欄位名稱相同時,則把HX欄位數字合計,並依序填到HZ~IF欄位。

問題1125.zip (50.93 KB)

問題

回復 1# sandra_wang
  1. Sub Ex()
  2.     Dim D As Object, R, S$, Rng As Range
  3.     Set D = CreateObject("Scripting.Dictionary")
  4.     With ActiveSheet
  5.          .[HR9].Resize(, 7).Copy .[HZ9]
  6.          .[HZ9].CurrentRegion.Offset(1).Clear
  7.         For Each R In .Range(.[HR10], .[HR10].End(xlDown))
  8.             S = Join(Application.Transpose(Application.Transpose(R.Resize(, 6))), ",")
  9.             D(S) = D(S) + R(1, 7)
  10.         Next
  11.         Set Rng = .[HZ9].Offset(1)
  12.         For Each R In D.KEYS
  13.             Rng.Resize(, 6) = Split(R, ",")
  14.             Rng.Offset(, 6) = D(R)
  15.             Set Rng = Rng.Offset(1)
  16.         Next
  17.     End With
  18. End Sub
複製代碼

TOP

這類問題我比較建議熟習樞紐分析表。

TOP

這類問題我比較建議熟習樞紐分析表。
oobird 發表於 2010-11-24 19:58



我也是認為這樣比較快
Hung-Chi Lin/林宏吉
HUNGCHILIN/林宏吉的OFFICE專欄

TOP

本帖最後由 sandra_wang 於 2010-11-25 09:41 編輯

請問#3 oobird
我要怎麼從樞紐分析的"版面配置"弄出像你一樣的表格呢?
我弄得跟你都不一樣耶!!

2010-11-25 上午 09-39-49.jpg (32.82 KB)

2010-11-25 上午 09-39-49.jpg

TOP

a.gif

TOP

To oobird:
我有試過你的方法了,可以做出來,
但是我有另一個問題是,因為這些過程我想放進去巨集裏面,
如果我用錄製巨集的話,那只要每次進來的資料量不同,使用錄製巨集就會有問題~
所以我是不是應該用VBA寫會比較好呢?

TOP

本帖最後由 oobird 於 2010-11-26 08:57 編輯

定義動態範圍名稱。
前幾天Hs版主有教過。不過~被刪了!
GB版主的VBA也是很好的選擇。

TOP

        靜思自在 : 有時當思無時苦,好天要積雨來糧。
返回列表 上一主題