2007-12-29

[Excel] 偷懶進步之母

已經幫 Travian 裡面的聯盟做村莊人口成長統計一段時間了,每個禮拜作一樣的事情,總是覺得在那邊把會員名稱排序,比較本週和上週的會員人口差多少、村莊有沒有增減、增減百分比多少等等;雖然只是簡單的的加減乘除,但是因為人員常常進進出出,所以統計總有些麻煩,純手工去把這些資料挑出來,實在是蠻蠢的一件工作。

枯燥的事情作當然要留給電腦做才對;分析一下每週無聊的動作:
  1. 收集本週的會員名單還有人口資料
  2. 與上周的資料比對
  3. 上周無資料的會員當然就是沒資料
  4. 上周有資料,但是本週除籍的會員不理他
翻一翻函數表列,發現 vlookup 符合我的需要,便拿來用看看。

首先開一個 Excel 新檔案,檔案裡面分成三個工作表,分別取名為:
  • 上週
  • 本週
  • 分析
把上週和本週的資料分別貼入前面兩個分頁,「分析」的工作表就拿來計算。

「分析」工作表的欄位,現有成員現在的資料,直接抓本週資料的清單就好。
  • 會員名稱(=本週!(會員名稱的儲存格)
  • 會員村莊數(=本週!(會員村莊的儲存格)
  • 會員人口(=本週!(會員人口的儲存格)
那先前的資料呢?用 vlookup 抓「上周」資料表的資料過來「分析」資料表:
  • 某會員上周人口數(=VLOOKUP((會員名稱的儲存格),上週!B:D,2,FALSE)
    1. 第一個引數「(會員名稱的儲存格)」 是「分析」資料表裡面放玩家姓名的地方
    2. 第二個引數「上週!B:D」這三欄資料要搜尋的上週資料。
    3. 第三個引數「2」是搜尋上週資料的範圍後,相符後把第 2欄的資料(人口)傳過來。
    4. 第四個引數「False」是比對資料必須完全相符才算數,寫「True」找不到資料會抓一個最相近的(模糊搜尋)。
花點時間把表格做好後,以後作這工作就更無腦啦!

抓到兩個不同時間的各公司營收大表,其實也可以按此要領作。(不過股票管喜歡的那幾支就好)

2 則留言:

linyh 提到...

不過那要先把資料匯出吧
匯出之後再用VSLOOKUP
雖然我不不會用
不過YAHOO知識家好多問答最後都是用這個函數

can 提到...

資料用剪貼或是網頁查詢都可以...

反正隨各人喜好就好了,想更偷懶就會有進步空間了,呵...