excel sample

 

excel

excel统计函数实例汇总 数组公式指南和示例 - Excel Excel公式应用常见错误及处理 excel多个条件筛选的三种方法 EXCEL分类汇总的用法_百度知道 Excel用函数公式筛选数据的方法 在公式中定义和使用名称 - Excel 快速入门:创建数据透视表 - Excel Excel:[2]vlookup双条件查询实例_百度经验 Love 4.0 EXCEL實現類似SELECT…GROUP BY的方法 在工作表中添加按钮并为其分配宏 - Excel Privacy warning for Office Excel - Microsoft Community VLOOKUP when the look up value is the output of a formula 使用 VLOOKUP、MATCH 和 INDEX 执行动态搜索 - Excel 易宝典:Excel 中的 COUNTA 和 COUNTIF 函数使用入门 Excel 中使用数据透视表 Pivot Table - 炭炭 - 博客园 如何在 Excel 中使用 Visual Basic 程序选择单元格-范围 Excel 引用其他工作簿工作表的特殊方法-Excel基础应用-ExcelHome技术论坛 - Extract a unique distinct list from two columns using excel 2007 array formula Get Digital Help - Microsoft Excel resource

 

excel 2010里加入vba怎么保存不了-CSDN论坛-CSDN.NET-中国最大的IT技术社区
http://bbs.csdn.net/topics/390359839?page=1#post-393597841
隐藏或显示公式
http://office.microsoft.com/zh-cn/excel-help/HP010066252.aspx

RAW_JIRA
------------------------------------------
Project Type Key Title Component/s Date Username Time Spent (h) 
grrp-Axiom Task GRRPAXIOM-765 China Bank UAT Support (Sam) 2014_China_Bank_P332558 6-Nov-14 Sam Hon 16 

RAW_SN
------------------------------------------
Task Long Description Time in seconds Assigned To Created Date Created by Time Worked Type Updated Updated by Updates Assignment Group Short Description Name Category Impacted Configuration Item
INC06771627  47 Edbert Fan 2014/10/20 11:25:02 edbertf ALERT - APP INTEROPERABILITY 2014/10/20 11:25:02 edbertf 0 CPT-APG-NEWMKTS-AXIOM HOST rise: ia115c1n7 Disk/Usage/Bytes/Percent  [80.04 > 80]   Axiom for Asia Operations [18925] [grn:/ms/stp/oracdm/RegReporting/AxiomAsia]

TMP_JIRA
------------------------------------------
 Username Profile Time ID identifier Profile# ppm ppm desc desc
=IF(INDIRECT("RAW_JIRA!"&ADDRESS(ROW(),CONFIG!$A$3))=0,"",INDIRECT("RAW_JIRA!"&ADDRESS(ROW(),CONFIG!$A$3)))
=IF(INDIRECT("RAW_JIRA!"&ADDRESS(ROW(),CONFIG!$A$4))=0,"",INDIRECT("RAW_JIRA!"&ADDRESS(ROW(),CONFIG!$A$4)))
=IF(INDIRECT("RAW_JIRA!"&ADDRESS(ROW(),CONFIG!$A$5))=0,"",INDIRECT("RAW_JIRA!"&ADDRESS(ROW(),CONFIG!$A$5)))
=IF(INDIRECT("RAW_JIRA!"&ADDRESS(ROW(),CONFIG!$A$6))=0,"",INDIRECT("RAW_JIRA!"&ADDRESS(ROW(),CONFIG!$A$6)))
=IF(A2="","","JIRA")
=IF(ISNUMBER(RIGHT(B2,6)*1),RIGHT(B2,6),"")
=IF(A2="","",IF(F2="","999999",F2))
=IFERROR(VLOOKUP(G2+0,CONFIG!$B$27:$C$208,2,FALSE),"")
=IF(INDIRECT("RAW_JIRA!"&ADDRESS(ROW(),CONFIG!$A$7))=0,"",INDIRECT("RAW_JIRA!"&ADDRESS(ROW(),CONFIG!$A$7)))

TMP_SN
------------------------------------------
Username Profile Time ID identifier Profile# ppm ppm desc real Time desc
=IF(INDIRECT("RAW_SN!"&ADDRESS(ROW(),CONFIG!$A$11))=0,"",INDIRECT("RAW_SN!"&ADDRESS(ROW(),CONFIG!$A$11)))
=IF(INDIRECT("RAW_SN!"&ADDRESS(ROW(),CONFIG!$A$12))=0,"",INDIRECT("RAW_SN!"&ADDRESS(ROW(),CONFIG!$A$12)))
=IF(INDIRECT("RAW_SN!"&ADDRESS(ROW(),CONFIG!$A$13))=0,"",INDIRECT("RAW_SN!"&ADDRESS(ROW(),CONFIG!$A$13))/CONFIG!$A$23)
=IF(INDIRECT("RAW_SN!"&ADDRESS(ROW(),CONFIG!$A$14))=0,"",INDIRECT("RAW_SN!"&ADDRESS(ROW(),CONFIG!$A$14)))
=IF(A2="","","SN")
=IF(A2="","",IFERROR(MID(B2,SEARCH("[",B2)+1,SEARCH("]",B2)-SEARCH("[",B2)-1),"999999"))
=IF(A2="","",IFERROR(VLOOKUP(F2+0,CONFIG!$A$27:$C$208,2,FALSE),"999999"))
=IFERROR(VLOOKUP(F2+0,CONFIG!$A$27:$C$208,3,FALSE),"")
=IF(C2="","",IF(MOD(INDIRECT("RAW_SN!"&ADDRESS(ROW(),CONFIG!$A$13)),CONFIG!$A$23),0,INDIRECT("RAW_SN!"&ADDRESS(ROW(),CONFIG!$A$13))/CONFIG!$A$23))
=IF(INDIRECT("RAW_SN!"&ADDRESS(ROW(),CONFIG!$A$15))=0,"",INDIRECT("RAW_SN!"&ADDRESS(ROW(),CONFIG!$A$15)))

CONFIG
------------------------------------------
JIRA_timesheet required column location  
column number column name 
=MATCH(B3,RAW_JIRA!A1:I1,0) Username 
=MATCH(B4,RAW_JIRA!A1:I1,0) Component/s 
=MATCH(B5,RAW_JIRA!A1:I1,0) Time Spent (h) 
=MATCH(B6,RAW_JIRA!A1:I1,0) Key 
=MATCH(B7,RAW_JIRA!A1:I1,0) Title 
  
SERVICENOW_timesheet required column location  
column number column name 
=MATCH(B11,RAW_SN!A1:O1,0) Assigned To 
=MATCH(B12,RAW_SN!A1:O1,0) Impacted Configuration Item 
=MATCH(B13,RAW_SN!A1:O1,0) Time in seconds 
=MATCH(B14,RAW_SN!A1:O1,0) Task 
=MATCH(B15,RAW_SN!A1:O1,0) Short Description 
  
total count of Jira and serviceNow item  
Jira count =COUNTA(aLista)-COUNTIF(aLista,"") 
serviceNow count =COUNTA(aList)-COUNTIF(aList,"") 
total =B18+B19 
  
time unit to be divided   
3600  
  
mapping between service now and ppm  
sn id profile id ppm desc
18925 308209 308209 - Support - ABO
43235 308889 308889 - Support - ORC
24031 333706 333706 - Others - Capacity & Perf
 332558 332558 - China Bank (Ph3)
 308491 308491 - China Bank (Ph2)
 332561 332561 - China Bank (Change Request)
 334012 334012 - Europe ESMA
 333598 333598 - Hong Kong/Korea SP
 333596 333596 - Japan Short Sell
 332546 332546 - Japan FinOPS Rpt Renovate
 332549 332549 - Japan FXOPS Rpt Renovate
 333601 333601 - Korea Compliance
 344466 344466 - Korea Record Keeping Rpt
 332687 332687 - Korea OTC
 332562 332562 - Korea Bank RTB
 332563 332563 - Others - Autosys R11
 333599 333599 - Others - ABO Upgrade
 333243 333243 - Others - ABO Infra TAM
 333602 333602 - Others - Infra Autos upgrade
 332556 332556 - ORC - MCTB Rpt Renovate
 309015 309015 - SRRP - Integration
 332560 332560 - SDM deco'
 332548 332548 - SSBO Rpt Renovate
999999 999999 Unidentified - Pls assign appropiate component in your ticket

TMP_MERGE1
------------------------------------------
Username identifier ppm# SN Ticket / Jira ID Time(h) SN Profile / Jira Component ppm desc description final ppm display

=IF(INDEX(aList,  COUNTA(A$1:A1))<>"",INDEX(aList,  COUNTA(A$1:A1)),INDEX(aLista,  COUNTA(A$1:A1)-CONFIG!$B$19)) 
=IF(INDEX(aList,  COUNTA(B$1:B1))<>"",INDEX(eList,  COUNTA(B$1:B1)),INDEX(eLista,  COUNTA(B$1:B1)-CONFIG!$B$19)) 
=IF(INDEX(aList,  COUNTA(C$1:C1))<>"",INDEX(ppmList,  COUNTA(C$1:C1)),INDEX(ppmLista,  COUNTA(C$1:C1)-CONFIG!$B$19)) 
=IF(INDEX(aList,  COUNTA(D$1:D1))<>"",INDEX(dList,  COUNTA(D$1:D1)),INDEX(dLista,  COUNTA(D$1:D1)-CONFIG!$B$19)) 
=IF(INDEX(aList,  COUNTA(E$1:E1))<>"",INDEX(realTimeList,  COUNTA(E$1:E1)),INDEX(cLista,  COUNTA(E$1:E1)-CONFIG!$B$19)) 
=IF(INDEX(aList,  COUNTA(F$1:F1))<>"",INDEX(bList,  COUNTA(F$1:F1)),INDEX(bLista,  COUNTA(F$1:F1)-CONFIG!$B$19)) 
=IF(INDEX(aList,  COUNTA(G$1:G1))<>"",INDEX(ppmDescList,  COUNTA(G$1:G1)),INDEX(ppmDescLista,  COUNTA(G$1:G1)-CONFIG!$B$19)) 
=IF(INDEX(aList,  COUNTA(G$1:G1))<>"",INDEX(descList,  COUNTA(G$1:G1)),INDEX(descLista,  COUNTA(G$1:G1)-CONFIG!$B$19)) 
=IF(A2<>"",IF(F2="","N/A",F2),"")

TMP_MERGE2
------------------------------------------
Username identifier ppm# SN Ticket / Jira ID Time(h) SN Profile / Jira Component ppm desc description final ppm display
=IF($M2=4^8,"",INDIRECT("TMP_MERGE1!A"&$M2)) 
=IF($M2=4^8,"",INDIRECT("TMP_MERGE1!B"&$M2)) 
=IF($M2=4^8,"",INDIRECT("TMP_MERGE1!C"&$M2)) 
=IF($M2=4^8,"",INDIRECT("TMP_MERGE1!D"&$M2)) 
=IF($M2=4^8,"",INDIRECT("TMP_MERGE1!E"&$M2)) 
=IF(IF($M2=4^8,"",INDIRECT("TMP_MERGE1!F"&$M2))="",G2,IF($M2=4^8,"",INDIRECT("TMP_MERGE1!F"&$M2))) 
=IF($M2=4^8,"",INDIRECT("TMP_MERGE1!G"&$M2)) 
=IF($M2=4^8,"",INDIRECT("TMP_MERGE1!H"&$M2)) 
=IF($M2=4^8,"",INDIRECT("TMP_MERGE1!I"&$M2))

row to be filtered
{=IFERROR(SMALL(IF(((INDIRECT("TMP_MERGE1!$E$2:$E$"&CONFIG!$B$20+1)>0)),ROW(INDIRECT("$2:$"&CONFIG!$B$20+1)),4^8),ROW(M1)),4^8)}

JIRA_SN_LIST
-------------------------------------------
Username identifier ppm# SN Ticket / Jira ID Time(h) SN Profile / Jira Component ppm desc description rank
=TMP_MERGE2!A1 =TMP_MERGE2!B1 =TMP_MERGE2!C1 =TMP_MERGE2!D1 =TMP_MERGE2!E1 =TMP_MERGE2!F1 =TMP_MERGE2!G1 =TMP_MERGE2!H1 rank

BOOKING_SUMMARY
-------------------------------------------
this is pivot table

notes
-----------------------------------------
1. copy JIRA timesheet to RAW_JIRA, serviceNow time sheet to RAW_SN
2. check if CONFIG sheet required column name matched with RAW_JIRA and RAW_SN, if not, then adjust CONFIG sheet.
3. TMP_JIRA , TMP_SN and TMP_MERGE1/TMP_MERGE2/JIRA_SN_LIST only defined 1000 rows, if you need to expand please choose Name Manager under Formulas tab to adjust, also you need to regenerate pivotTable.
such as aList =TMP_SN!$A$2:$A$1000
4. there is sum of total row of TMP_JIRA and TMP_SN, they are used in TMP_MERGE1/TMP_MERGE2 sheet 
5. the time unit in CONFIG sheet is used to convert time in TMP_SN real Time column
6. mapping table in CONFIG is used in TMP_SN to generate ppm column
7. JIRA_SN_LIST is used to hold the final result from TMP_MERGE2 sheet, It will filter by column Time(h)>0, and sort by Username
8. you need to refresh BOOKING_SUMMARY after  every update by  click Refresh Workbook button

 

button assigned macro
Sub RefreshWorkbook()
'
' RefreshWorkbook Macro
'

'
    Sheets("JIRA_SN_LIST").Select
    ActiveSheet.Range("$A$1:$I$1000").AutoFilter Field:=1, Criteria1:="<>"
    Sheets("BOOKING_SUMMARY").Select
    ActiveSheet.PivotTables("PivotTable1").PivotCache.Refresh
    Sheets("PROJECT_SUMMARY").Select
    ActiveSheet.PivotTables("PivotTable2").PivotCache.Refresh
    Sheets("notes").Select
End Sub

 


 

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值