Create Excel 2007 file using Interop services.

Microsoft Office Interop (Excel Automation)คือ ตัวเลือกอีกทางหนึ่งที่ใช้สำหรับ สร้าง อ่าน เอกสาร Excel (XLS, XLSX, CSV) จากการพัฒนาโดยใช้   C# หรือ VB.NET แต่บทความนี้จะขอยกตัวอย่างการพัฒนาเพื่อสร้างเอกสารโดยใช้ C# ค่ะ Step 1  เปิด Visual Studio File>New>Project เลือก Visual C#> Windows > Select Console Application Step 2  เลือก >> Project Menu >> เลือก Add References >> เลือกที่ Tab COM >> กด “Microsoft Excel 12.0 Object Library”  เพื่อเพิ่ม References Step 3  ตัวอย่าง Code C# เพื่อใช้ในการสร้าง Excel File ดังนี้ เมื่อมีการ Run โปรแกรมแล้ว Excel file ก็จะถูกสร้างตาม path ที่ระบุ ค่ะ  แหล่งอ้างอิง https://www.c-sharpcorner.com/blogs/creating-excel-file-using-interop-services1

Read More »

TFS : (ตอน) การติดตามการดำเนินโครงการ

จากบทความ การบริหารโครงการโดยใช้เครื่องมือ Team Foundation Server (Phase 4 : การวางแผนงาน)และการบริหารโครงการโดยใช้เครื่องมือ Team Foundation Server (Phase 5 : การตรวจสอบงานที่ได้รับมอบหมาย และการบันทึกผลการทำงาน)ได้กล่าวถึง ขั้นตอนการใช้ TFS ในการวางแผน การเข้าไปดูงานที่ได้รับมอบหมาย และการบันทึกผลการปฏิบัติงาน บทความต่อไปนี้ จะเป็นเนื้อหาต่อเนื่องจาก 2 บทความข้างต้น นั่นคือ เราจะสามารถใช้ TFS ในการติดตามผลการดำเนินงานได้อย่างไรบ้าง ในกระบวนการบริหารจัดการโครงการ “ขั้นตอนการติดตามงาน” ถือเป็นขั้นตอนที่สำคัญอย่างมาก และเป็นขั้นตอนที่ผู้จัดการโครงการต้องปฏิบัติ และปฏิบัติอย่างต่อเนื่อง สม่ำเสมอ เพื่อให้สามารถตรวจสอบความล่าช้าของโครงการ และค้นหาปัญหาที่ทำให้ล่าช้า เพื่อนำไปสู่แนวทางแก้ไขที่ทันเวลานั่นเอง TFS สามารถตรวจสอบ หรือติดตามงานได้หลายวิธี ในบทความนี้ ได้หยิบยกมาให้เห็นด้วยกัน 3 วิธี อย่าให้เสียเวลา เรามาทำความรู้จัก ในแต่ละวิธีกันเลยค่ะ…. วิธีที่ 1 ตรวจสอบจาก Stage โดย StageTO DO = ยังไม่ดำเนินการIN PROGRESS = อยู่ระหว่างการดำเนินการDONE = ดำเนินการเสร็จแล้ว วิธีนี้ เป็นการติดตามงานในภาพของแต่ละงานย่อย หรือ Task นั่นเอง โดยดูจากปริมาณงานที่อยู่ใน Stage ถ้า Tasks ทุก Tasks อยู่ใน Stage = DONE สบายใจได้เลยค่ะ แต่ถ้าจะถึงเวลาปิดโครงการแล้วแต่ Tasks ยังอยู่ใน TO DO หรือ IN PROGRESS จำนวนมาก ต้องรีบสอบถามสมาชิกเลยนะค่ะว่าเกิดอะไรขึ้น เพื่อให้สามารถแก้ไขปัญหาได้ทันท่วงทีค่ะ วิธีที่ 2 ตรวจสอบจาก Burndown Chart ซึ่งจะแสดงเป็นกราฟง่ายๆที่ใช้บอกเราว่า “เราทำงานเสร็จไปแล้วเท่าไรและเราเหลืองานที่ต้องทำอีกเท่าไร” แสดงดังรูป จากรูป วิธีนี้เป็นการติดตามงานในมุมมองภาพรวมทั้งโครงการ นั่นคือ หากงานเป็นไปตามแผนการดำเนินงาน Remaining Work ที่เหลือในแต่ละช่วงเวลาจะต้องต่ำกว่าเส้น Ideal Trend นะค่ะ หากเลยเส้น แสดงว่างานไม่เสร็จตามแผน ถ้าเจอแบบนี้อย่านิ่งนอนใจนะค่ะ ต้องหาว่าเกิดปัญหาอะไรขึ้นที่ทำให้งานช้ากว่าที่กำหนด และหาแนวทางแก้ไขนะค่ะ อย่าให้นานเกินไปจะแก้ไขได้ยากขึ้นค่ะ วิธีที่ 3 ตรวจสอบจาก Work By Assinged To ดังรูปด้านล่างค่ะ การติดตามจาก Work By Assigned To นั้นดูจำนวนชั่วโมงที่เหลือ ถ้าชั่วโมงยังเหลือเยอะ แสดงว่างานยังเหลืออีกเยอะ ดังนั้นจะต้องไปติดตามรายตัวแล้วค่ะ ว่าเกิดปัญหาอะไรขึ้น วิธีนี้จะดีหน่อยตรงที่ สามารถติดตามในมุมมองของรายบุคคลได้เลยค่ะ จะเห็นได้ว่าการติดตามผลการดำเนินงานโดย TFS ทำได้ง่ายมาก และเป็นเครื่องมือที่ใช้งานสะดวกด้วย สามารถติดตามรายโครงการ รายบุคคล หรือราย Tasks ได้ตามที่ต้องการ ทำให้ผู้จัดการโครงการติดตามสถานะของโครงการได้ ซึ่งหากพบว่าไม่เป็นไปตามแผน สามารถหาแนวทางแก้ไขได้ทันท่วงที ก่อนที่จะทำให้โครงการล่าช้าหรือเมื่อเวลาล่วงเลยไป จะแก้ไขปัญหาได้ยากขึ้น นอกจากนี้ ผู้จัดการโครงการยังสามารถใช้เป็นเครื่องมือในการรายงานความก้าวหน้าของโครงการ เพื่อนำเสนอให้กับผู้บริหาร หรือผู้ที่เกี่ยวข้องได้ทราบถึงสถานะของโครงการ ซึ่งเข้าใจข้อมูลได้ง่าย…(เห็นด้วยใช่ไม๊ค่ะ) จากบทความต่าง ๆ ที่เกี่ยวกับ TFS ผู้นำเสนอ หวังเป็นอย่างยิ่งว่าการนำเสนอ หรือบทความแต่ละบทความจะประโยชน์กับทุกๆ ที่สนใจนะค่ะ…. ^___^ อย่างน้อยก็ได้นำเสนอให้ทุกคนได้รู้จักกับเครื่องมือ TFS ในมุมมองของการบริหารจัดการโครงการนะค่ะ…

Read More »

บริหารจัดการ App Passwords บน Office 365

App passwords คือ password ที่จำเป็นต้องใช้บนแอพพลิเคชั่นใดๆ ก็ตามที่ไม่สามารถผ่าน Multi-factor authentication ได้ เช่น Outlook, Lync เป็นต้น เริ่ม…ได้ เข้าระบบที่ http://email.psu.ac.th หรือ https://outlook.com/email.psu.ac.th คลิกที่รูปโปรไฟล์ที่มุมบนขวา (หรือชื่อย่อ หลังปุ่มกระดิ่ง) เลือก My account จะได้ดังรูป คลิก Security & privacy คลิก Additional security verification คลิก Create and manage app passwords จะเปิดหน้าต่างใหม่ ซึ่งสามารถจำหน้านี้ไว้ใน Bookmark ได้เลย https://account.activedirectory.windowsazure.com/AppPasswords.aspx คลิก create ตั้งชื่อที่เราเข้าใจว่าคือ app ไหน คลิก Next จะได้ password สำหรับใช้งานได้ทันที ก็เอาไปใช้ได้เลยแล้วคลิก close จะเห็นว่า password ยาวมาก และเป็นพาสเวิร์ดที่สร้างขึ้นมาครั้งเดียว จำไม่ได้ต้องสร้างใหม่ แล้วของเก่าทิ้งโดยการกด Delete หลัง password ที่ไม่ใช้งาน ชื่อ app เป็นเพียงชื่อที่ใช้สื่อความหมายว่าเอาพาสเวิร์ดไปใช้กับ app อะไรเท่านั้น password สามารถใช้ได้ตราบใดที่ยังไม่ลบออก ถึงแม้จะจำไม่ได้ถ้ากรอกไว้และให้โปรแกรมที่ใช้งาน password นี้จำไว้ก็จะใช้ได้ตลอด จบขอให้สนุก

Read More »

Download and install Office365

ปัจจุบันนักศึกษาและบุคลากรของมหาวิทยาลัยสงขลานครินทร์ สามารถใช้งาน Office365 ได้แล้ว โดยมีเงื่อนไขดังนี้ PC (Windows) หรือ Macs สามารถติดตั้งรวมกันได้ 5 เครื่อง Tablets ติดตั้งได้ 5 เครื่อง (Android, iPadOS) โทรศัพท์ ติดตั้งได้ 5 เครื่อง (Android, iOS) email account ภายใต้โดเมน @email.psu.ac.th ขนาด 50GB พื้นที่จัดเก็บข้อมูล One drive ขนาด 5TB สำหรับนักศึกษา สามารถเข้าระบบได้ที่ http://email.psu.ac.th หรือ https://outlook.com/email.psu.ac.th โดย username จะเป็น [รหัสนักศึกษา]@email.psu.ac.th ยกตัวอย่าง เช่น 62111111111@email.psu.ac.th รหัสผ่านคือรหัสเดียวกับ PSU Passport สำหรับบุคลากร ต้องขอเปิดใช้บริการก่อนที่ https://passport.psu.ac.th หลังจากขอเปิดใช้บริการ ต้องรอ 1 ชั่วโมง จึงจะสามารถใช้งานได้ สามารถเข้าระบบได้ที่ http://email.psu.ac.th หรือ https://outlook.com/email.psu.ac.th โดย Username จะเป็น [log in ของ PSU passport]@email.psu.ac.thยกตัวอย่าง เช่น username.s@email.psu.ac.th รหัสผ่านคือรหัสเดียวกับ PSU Passport เริ่ม…ได้ เปิดเว็บ http://email.psu.ac.th หรือ https://outlook.com/email.psu.ac.th หากเป็นการเข้าระบบครั้งแรก ระบบจะให้ทำการตั้งค่า Multi-factor authentication จะเป็นหน้า Additional security verification หากต้องการความง่ายให้เลือกตามรูป แล้วใส่หมายเลขโทรศัพท์ของเราลงไป คลิก Next แล้วรอรับ SMS (**อาจใช้เวลานานกว่า SMS จะมา) กรอกตัวเลขจาก SMS แล้วกด Next

Read More »

WPF Layout (Part III)

The WPF Viewbox WPF viewbox จะสามารถปรับขนาด/ปรับมิติของ control ของ Windows Presentation Foundation ได้โดยอัตโนมัติ  viewbox และสามารถปรับขนาดของ control เพื่อเติมเต็มพื้นที่ที่มีอยู่ คือจะมีการปรับขนาดของ child ซึ่งเป็น control ที่บรรจุอยู่ใน ViewBox ให้อัตโนมัติ ซึ่งจะมีการปรับพิกัดโดยอัตโนมัติเมื่อมีการปรับเปลี่ยนขนาดเพื่อให้ชุดของพิกัดที่กำหนดเป็นพิกเซลในขนาดดั้งเดิม อะไรคือจุดประสงค์ของ WPF Viewbox? เมื่อไหร่ที่คุณจะใช้มัน? เมื่อคุณพัฒนาโปรแกรม โดยทั่วไปแล้วคุณจะไม่สามารถรู้ถึงความแน่นอนของ hardware ของระบบที่จะเป็นไป โดยเฉพาะอย่างยิ่งหากแอปพลิเคชันมีไว้เพื่อการใช้งานในระยะยาว คุณไม่สามารถมั่นใจได้เลย   ไม่ว่าจะเป็นขนาดหรือความละเอียดของจอภาพที่แสดงผลการใช้งานของระบบต่างๆ เพราะปีที่แล้วหน้าจออาจจะเป็น ultra-high-resolution ปีต่อมาอาจจะเป็น  low-resolution  monitor  และถ้าคุณได้พัฒนาโปรแกรมโดยคำนึงถึงความละเอียดของหน้าจอของปีที่แล้วไว้ เมื่อมาดูในปีถัดมาในส่วนของหน้าต่างโปรแกรม ปุ่ม และ elements อื่นๆของ GUI ที่ได้พัฒนาไว้ อาจจะมีขนาดที่เล็กมาก จนทำให้เกือบจะใช้ไม่ได้เลย Resize! Viewbox จะปรับความละเอียดของหน้าจอให้อัตโนมัติทุกหน้าจอให้ตามความเหมาะสม แม้ว่าผู้ใช้งานจะปรับให้หน้าต่างโปรแกรมให้มีขนาดใหญ่สุดในหน้าจอที่มีความละเอียดใดๆก็ตาม โดยเมื่อผู้ใช้งานปรับขนาดและสัดส่วนของหน้าต่างโปรแกรม Viewbox จะทำการปรับขนาดและตำแหน่งที่สัมพันธ์กันของเนื้อหาให้พอดี ส่วนนี้จะทำให้ผู้พัฒนาโปรแกรมและผู้ใช้งานมีความยืดหยุ่นสูงสุด จากตัวอย่าง XAML code จะสร้าง Viewbox กับ button  ที่เมื่อมีการปรับขนาดของ button  ให้อัตโนมัติเมื่อมีการปรับขนาดของ Viewbox window What About the Margins? จะน่าสนใจขนาดไหนถ้าcontrol ที่อยู่ใน Viewbox  window ก็จะถูกปรับขนาดโดยอัตโนมัติ และจะเกิดอะไรขึ้นเมื่อ window ไม่ได้ถูกปรับขนาดแค่เพียงอย่างเดียวเท่านั้นแต่จะปรับในส่วนของมิติให้กับ control ที่ไม่พอดีกับ window ไปด้วย ?  Viewbox มี 2 properties  คือ Stretch และ StretchDirection ที่จะมาจัดการในส่วนนี้ให้คุณได้ Stretching it a Bit จากโค้ดตัวอย่างข้างต้น เมื่อ complied เป็น   EXE  เราจะเห็นโปรแกรม “Viewbox Test” ที่มีข้อความ “I’m a Button” อยู่บนปุ่ม และเมื่อคุณปรับขนาดของ window ปุ่มก็จะถูกปรับขนาดและอัตราส่วนให้พอดีโดยอัตโนมัติ ทำให้ปุ่มมีขนาดของสัดส่วนที่พอดีสวยงามไม่ว่าจะมีการปรับให้มีขนาดใดก็ตาม ในกรณีที่อัตราส่วนของภาพใน view box แสดงขนาดไม่พอดีกับปุ่ม อาจจะเกิดจากการมีที่ช่องว่างทั้งด้านบนและด้านล่างปุ่มหรือทางซ้ายและขวา The Default กรณีที่ไม่ได้กำหนดค่าของ Stretch property  จะมีค่า default ของ Viewbox  ที่กำหนดในส่วนของ Stretch property คือ “Uniform” ดังตัวอย่าง จากตัวอย่างข้างต้นจะมีความหมายเหมือนกับตัวอย่างข้างล่าง Stretch property จะประกอบด้วย 4 ตัวเลือก  ดังนี้ 1. No Stretch At All กรณีที่ไม่ต้องการให้มีการปรับขนาดของ child  control จำเป็นที่จะต้องกำหนดค่า  Stretch property เป็น None ดังตัวอย่าง เมื่อมีการกำหนดกำหนดค่า  Stretch property เป็น None ปุ่มจะคงขนาดเดิมไว้ โดยจะไม่เกิดอะไรขึ้นไม่ว่าคุณจะปรับขนาดหรือมิติของ Viewbox window  กรณีถ้ามีการเพิ่มขนาดของ window ปุ่มจะคงขนาดเดิมแต่มีช่องว่างรอบๆปุ่มแทน ส่วนถ้าย่อขนาดของ window ปุ่มก็จะคงขนาดเดิมเช่นกันแต่อาจจะถูก window บังปุ่มจนมองไม่เห็นทั้งปุ่ม หรือสุดท้ายเมื่อย่อขนาดลงเรื่อยๆจนทำให้เรามองไม่เห็นปุ่มเลย 2.Free-Form เมื่อกำหนดค่า Stretch=”Fill”  จะทำให้ child control ถูกปรับขนาดให้พอดีกับ  Viewbox  โดยไม่มีการตัดของเนื้อหาใดๆออกเลย คือจะแสดงผลอย่างสมบูรณ์ ในส่วนของการปรับขนาดในแนวตั้งและแนวนอนอาจจะแตกต่างกัน ซึ่งอาจจะทำให้เนื้อหาใน Viewbox ผิดเพี้ยนไป เนื่องจากจะถูกปรับเปลี่ยนอัตราส่วนเป็นขนาดตาม window ดังตัวอย่าง 3.Uniform Adjustment Uniform option จะเหมือนกับ Free-Form ที่อธิบายข้างบน

Read More »