วันศุกร์ที่ 6 มีนาคม พ.ศ. 2552

Calc : Features ที่ไม่ทำงานหลังการ Convert ไฟล์ Excel เป็น Calc

ในการ convert ไฟล์จาก Excel เป็น Calc นั้น อาจมี Feature บางอย่างที่เราทำไว้ใน Excel แต่เมื่อไปอยู่ใน Calc แล้ว มันจะไม่ทำงานหรืออาจมีการเปลี่ยนแปลงไป Feature เหล่านั้นได้แก่


ความกว้างของคอลัมน์อาจแคบลง
เมื่อ convert ไฟล์มาแล้ว อาจพบว่าขนาดความกว้างของบางคอลัมน์ อาจไม่เท่าเดิม ทำให้แสดงข้อความในเซลไม่ได้ (เราจะเห็น '###' แทนข้อความนั้น) ซึ่งเราต้องมา resize เอาเองใหม่อีกครั้ง นอกจากนี้ยังอาจมีบางเซลที่ต้องตั้งการจัดเรียงข้อความใหม่ เช่น ที่เคยอยู่ตรงกลาง ก็อาจเปลี่ยนไปอยู่ชิดด้านซ้ายเป็นต้น

การใช้สูตรบางสูตรอาจได้ค่าต่างกับใน Excel
การอ่านค่าสูตรในโปรแกรม Excel และ Calc จะแตกต่างกันอยู่บ้าง เช่น การใช้สูตร ISERROR() ใน Excel จำเป็นต้องมีการเปรียบเทียบค่า หากไม่มีการเปรียบเทียบค่า มันจะแสดง Error ให้เห็น แต่ใน Calc นั้น หากไม่มีการเปรียบเทียบค่า มันจะแสดงค่าเป็น =TRUE ให้เลย ตัวอย่างเช่น

IF (ISERROR( some calculation ); A1; B2)
ใน Calc ใช้ได้ แต่หาก Export ไปใช้ใน Excel (Convert ไฟล์เป็น .xls) มันจะแสดงค่า Error
ในขณะที่....
IF (ISERROR( some calculation )=TRUE ; A1 ; B2)
จะสามารถทำงานได้ดีกับทั้ง 2 โปรแกรม

Macro ไม่ทำงาน
คำสั่ง Macro ที่เขียนด้วย VBA เพื่อใช้ใน Excel จะไม่ทำงานใน Calc ตัวอย่างเช่น
- กรณีที่ไฟล์นั้นมีปุ่มที่ทำจาก Macro ปุ่มเหล่านั้นจะไม่ปรากฏให้เห็นและจะไม่ทำงานใน Calc
- หากมีการใช้คำสั่ง Macro ในไฟล์นั้น ๆ คำสั่ง Macro นั้นจะยังคงอยู่ แต่มันจะไม่ทำงานให้อย่างที่เราทำไว้ใน Excel
- การใช้คำสั่ง Macro ในการ Protect Sheet หากมีการ convert มาใช้ใน Calc คำสั่งเหล่านั้นก็จะไม่ทำงาน (Unprotect) ด้วยเช่นกัน

Format ของวันที่ (Date) อาจเปลี่ยนไป
หลังจาก convert ไฟล์ Excel มาใช้ใน Calc แล้ว Format Date ที่ทำไว้อาจเปลี่ยนไป เช่น 99/08/16
ใน Excel อาจเปลี่ยนเป็น 16.08.99 ใน Calc

วันพฤหัสบดีที่ 5 มีนาคม พ.ศ. 2552

Calc : วิธีเปลี่ยนตัวเลขที่เป็น Text Format ให้เป็น Number Format

ใน OpenOffice Calc เราสามารถเปลี่ยนข้อมูลตัวเลขที่มีฟอร์แมตเป็นแบบNumber Format ให้เป็นแบบ Text Format ได้ง่าย ๆ ครับ ลองทำตามนี้ดูนะครับ

=TEXT(number;"####") เช่น =TEXT(123;"###")

ด้วยคำสั่งนี้ จะทำให้ Cell ที่ีมีคำสั่งนี้ แสดงค่าตัวเลขในแบบของ Text Format

หากต้องการใช้คำสั่งนี้เพื่อเปลี่ยนข้อมูลทั้งคอลัมน์ ให้ใช้คำสั่งแบบนี้ครับ

=TEXT(E3;"###") โดยที่ E3 นั้น คือตำแหน่งของข้อมูลที่เราต้องการจะเปลี่ยนฟอร์แมต

อย่างไรก็ตาม ข้อมูลใน Cell ที่มีคำสั่งนี้ยังไม่ใช่ข้อมูลจริง ๆ แต่เป็นสิ่งที่แสดงให้เห็นตามคำสั่งที่เราเขียนไว้ใน Cell หากต้องการให้เป็นข้อมูลที่เป็น Text Format จริง ๆ ให้ทำแบบนี้เพิ่มเติมครับ

1. ใช้เม้าส์คลิกเลือก Cell ที่มีคำสั่งนั้น แล้วไปที่มุมล่างขวา ลากลงมาจนครบทุก Cell ที่ต้องการ วิธีนี้จะทำให้มีการ Copy คำสั่งจาก Cell แรกไปยังทุก Cell ที่เราลากไปถึง และทุก Cell ที่มีคำสั่งก็จะแสดงค่าตามคำสั่งที่มีอยู่ใน Cell
2. ให้คลิกที่ Cell แรกอีกครั้ง แล้วลากเป็นไฮไลท์ลงมาจนครบทั้งหมด กดปุ่ม Copy ที่เมนู Toolbar ด้านบน หรือกด Ctrl+C
3. ไปที่ตำแหน่งที่เราต้องการ paste คลิกขวาที่ตำแหน่งนั้น แล้วเลือก Paste Special
4. เมื่อหน้าต่าง Paste Special ขึ้นมา ให้เอาเครื่องหมายถูกที่หน้าคำว่า Paste All ออก แล้วเอาเครื่องหมายถูกหน้าข้อความอื่นออกให้หมด เหลือไว้แค่หน้าคำว่า Text แล้วกด OK
5. เพียงเท่านี้เราก็จะได้ตัวเลขที่เปลี่ยนจาก Number Format ไปเป็น Text Format ครบทุก Cell ครับ