Everyday Excel You Can Read

สร้างกราฟที่ปรับช่วงเวลาของการแสดงข้อมูลโดยอัตโนมัติ


เทคนิคนี้ผมได้มาตอนที่มีความต้องการซอฟท์แวร์ตัวหนึ่งในการ monitor เหตุการณ์ผิดปรกติในระบบ โดยใช้ Event Log ของระบบมาเป็นข้อมูลเริ่มต้น แต่เนื่องจากซอฟท์แวร์ตัวนี้ราคาแพงมาก ผมเลยใช้วิธี export system log ออกมาทำกราฟมา monitor เองเป็นรายสัปดาห์



รูปที่ 1






รูปที่ 2




ความน่าเบื่อของงานนี้ก็คือ
เจ้าหน้าที่ที่ทำหน้าที่ตรวจสอบกราฟ
ต้องมานั่ง export system log ออกมาทุกสัปดาห์ หลังจากนั้นแล้วเอามาเข้า
excel (ดูตัวอย่างข้อมูลในรูปที่ 1) เพื่อเลือกเอาข้อมูลในแต่ละ
สัปดาห์มานับความถี่เป็นวัน แล้ว copy เจ้าข้อมูลใน 1 สัปดาห์มาทำกราฟอีกทอดหนึ่ง
(ดูรูปที่ 2) ผมเลยพยายามลดงานให้โดยใช้ Task Schedule ใน server เป็นตัว
export system log ให้อัตโนมัติ ซึ่งสามารถทำได้เป็นรายวัน
แต่การเอาข้อมูลมาสร้างกราฟ
ให้มันเป็นรายสัปดาห์อย่างอัตโนมัตินี่จะทำอย่างไร คำตอบมีในเทคนิคนี้แล้วครับ


เริ่มแรกเราต้องสร้างตารางท
ี่จะใช้เป็นข้อมูลในการแสดงผล (ดูรูปที่ 3) ซึ่งตารางนี้จะดึงข้อมูลมาจากตารางข้อมูลดิบในรูปที่ 1 (ตารางข้อมูลชื่อ EventLog) โดยเราจะตั้งชื่อตารางแสดงผลเป็น EventGraph จะเห็นว่าที่เซล I2 ผมจะกำหนดให้เป็นวันที่ปัจจุบันโดยใช้สูตร =TODAY() ที่ต้องกำหนดไว้ถัดจากขอบตารางเพราะเราจะทำรางข้อมูลย้อนหลัง 7 วันครับ



รูปที่ 3




ใส่สูตรต่อไปนี้ลงไปที่คอลั
มน์ถัดมาทางซ้ายในแถวเดียวกัน (ดูรูปที่ 4)

=I2-1



รูปที่ 4




ก๊อปปี้สูตรไปทางด้านซ้ายจน
ครบ 7 วัน (ดูรูปที่ 5)



รูปที่ 5




ขั้นตอนต่อไปคือสร้างสูตรเพ
ื่อ
ดึงข้อมูลจากตาราง EventLog มาใส่ในตารางที่ EventGraph โดยให้จำนวน Error
ที่เกิดขึ้นในแต่ละวันด้วย สูตรที่ผมใช้คือ (ดูรูปที่ 6)


=COUNTIF(EventLog!$A:$A,Ev
entGraph!C$2)



รูปที่ 6





ผมใช้ COUNTIF() ในการนับจำนวนเซลอย่างมีเงื
่อนไข โดยพารามิเตอร์แรกคือช่วงของข้อมูลที่จะนับ ในกรณีนี้เป็นคอลัมน์วันที่ของ EventLog แต่ละวัน (Transaction Date) ซึ่งเนื่องจากตาราง EventLog จะมีการใส่ข้อมูลต่อท้ายทุกวัน ผมจึงกำหนดช่วงข้อมูลเป็นคอลัมน์ A ทั้งคอลัมน์ (EventLog!$A:$A)

ส่วนพารามิเตอร์ที่สองเป็นเ
งื่อนไขในการนับซึ่งผมใส่ให้สูตรทำการเปรียบเทียบค่าในคอลัมน์ A กับค่าวันที่ในเซลที่บรรทัดที่ 2 ซึ่งเป็นค่าวันที่เช่นกัน ถ้าตรงกันก็ให้นับรวมไว้

จากนั้นให้พล็อตกราฟแท่งใส่
ไว้ด้านล่างของตาราง ซึ่งขั้นตอนการพล็อตกราฟขอข้ามไป เพราะถึงระดับนี้แล้วเชื่อว่าเพื่อนๆน่าจะทำได้ เราจะได้กราฟหน้าตาดังรูปที่ 7 ตามข้อมูลที่เรามี



รูปที่ 7




กราฟรูปนี้จะเลื่อนไปทางซ้า
ยทุกวัน เพราะเราใช้ค่าตั้งต้นที่เซล I2 เป็นวันปัจจุบันเสมอ หากต้องการดูข้อมูลย้อนหลังก็เพียงแต่เปลี่ยนวันที่เซล I2 เป็นวันในอดีต ตามรูปที่ 8 ผมลองเปลี่ยนเป็นวันที่ 10-Sep-09 แทน



รูปที่ 8




ลองนำไปดัดแปลงใช้กับการนำเ
สนอในข้อมูลแบบอื่นๆได้ตามสะดวกครับ


 

Create Date : 19 พฤศจิกายน 2552
Last Update : 19 พฤศจิกายน 2552 19:02:40 น. 0 comments

Add to Share/Save/Bookmark Share/Save/Bookmark Share/Save/Bookmark
Counter : Pageviews.

ชื่อ :
Comment :
  *ใช้ code html ตกแต่งข้อความได้เฉพาะสมาชิกช้ code html ตกแต่งข้อความได้เฉพาะสมาชิก
 
รหัสส่งข้อความ
กรุณายืนยันรหัสส่งข้อความ

 

I_Feel_Control

Location :

[Profile ทั้งหมด]


My FriendFlock
ฝากข้อความหลังไมค์
Rss Feed

Blog นี้ผมสร้างขึ้นมาด้วยความที่อยากจะแลกเปลี่ยนเทคนิคการใช้งาน Excel ในระดับต่างๆกับเพื่อนๆ โดยมีความเชื่อว่าความรู้จะเติบโตพัฒนาไปได้อย่างต่อเนื่องก็ต่อเมื่อมีการแลกเปลี่ยนความรู้ให้กันและกันอย่างสม่ำเสมอ
ผมเองเคยเขียนตำราคอมพิวเตอร์มาสองเล่ม เล่มหนึ่งนั้นเกี่ยวกับ Excel นี่เองด้วยความที่ใช้โปรแกรมตัวนี้มายาวนานและต่อเนื่อง และมักจะต้องใช้โปรแกรม Excel ทำงานที่ไม่นึกว่า Excel มันจะทำได้ (แต่มันทำได้) ก็เลยอยากเอามาแบ่งปันไว้ที่ Blog แห่งนี้
สำหรับเพื่อนๆที่มีคำถามเกี่ยวกับ Excel รุ่น 2003/2007 สามารถเข้ามาโพสคำถามได้ครับ ผมจะพยายามตอบให้ได้ หากไม่ได้จะพยายามค้นหาคำตอบจากที่อื่นให้ครับ ส่วนเพื่อนๆคนอื่นถ้าหากมีความรู้ใหม่ๆมาแลกเปลี่ยนก็ยินดีเป็นอย่างยิ่งเลยครับ
[Add I_Feel_Control's blog to your weblog]