推 m9300913:感謝指導 04/22 21:31
假設你的資料在 sheet1
Sheet2!A1
=IF(ROWS($A$1:A1)<=SUM(IF(Sheet1!$A$1:$A$100="","",
1/COUNTIF(Sheet1!$A$1:$A$100,Sheet1!$A$1:$A$100))),
INDEX(Sheet1!A:A,SMALL(IF(IF(ISERROR(ROW($A$1:$A$100)=
MATCH(Sheet1!$A$1:$A$100,Sheet1!$A$1:$A$100,0)),FALSE,ROW($A$1:$A$100)
=MATCH(Sheet1!$A$1:$A$100,Sheet1!$A$1:$A$100,0)),ROW($A$1:$A$100),""),
ROWS($A$1:A1))),"")
結束後按 Ctrl+Shif+Enter
Sheet2!B1
=IF(A1="","",SUMIF(Sheet1!$A$1:$A$100,A1,Sheet1!$C$1:$C$100))
Sheet3!C1
=IF(COLUMNS($C1:C1)<=COUNT(IF(Sheet1!$B$1:$B$100="","",IF(Sheet1!$A$1:$A$100=
$A1,ROW(Sheet1!$A$1:$A$100),""))),INDEX(Sheet1!$B:$B,
SMALL(IF(Sheet1!$B$1:$B$100="","",IF(Sheet1!$A$1:$A$100=$A1,
ROW(Sheet1!$A$1:$A$100),"")),COLUMNS($C1:C1))),"")
結束後按 Ctrl+Shif+Enter copy to Sheet2!I1
然後將 Sheet2!A1到 Sheet2!I1 一起往下拉即可
※ 引述《m9300913 (m9300913)》之銘言:
: ※ 引述《m9300913 (m9300913)》之銘言:
: : 軟體:excel
: : 版本:2003
: : 最近要做敝單位的98年度個人健保支出,是要報稅用的
: : 健保局的原始資料如下:
: : A B C
: : 1 A123456789 10200
: : 2 A123456789 B111111111(A1眷) 10200
: : 3 A123456789 B111111112(A1眷) 10200
: : 4 A123456789 B111111113(A1眷) 10200
: : 5 A223456789 9300
: : 6 A333456789 9700
: : 7 A444456789 8100
: : 8 A444456789 C000000001(A7眷) 8100
: : 9 A555556789 7500
: : 10 A666666789 7700
: 經過先前承辦人的指導,我來說明一下做法,看有沒有更好的
: 1先用counif在D欄統計出個數,再用[篩選]的找出2以上的,
: 再E欄依順填滿,例如2:1,2 3:1,2,3 4:1,2,3,4。
: 2再用CONCATENAT字串,在F欄合併為11碼
: 3最後,在現有人事資料以vlookup(字串+2,X,X,false)可找到第1眷屬
: 在現有人事資料以vlookup(字串+3,X,X,false)可找到第2眷屬
: 等等,就可轉成下列排列方式,以此類推。
: 不知道各位還有沒有更佳想法!!
: : 現在要做成一份清單如下:
: : A B C D E
: : 1 A123456789 40800 B111111111 B111111112 B111111113
: : 2 A223456789 9300
: : 3 A333456789 9700
: : 4 A444456789 16200 C000000001
: : 5 A555556789 7500
: : 6 A666666789 7700
: : ::
: : ︰︰
: : 個人含眷屬的金額我是用樞紐分析加總
: : 但是要如何將原本欄的眷屬資料轉為附加被保險人(列)的之後
: : 這部份就要請各位高手指導一下,感激不盡
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.131.84.78