แต่ที่ไม่พบ ก็เพราะมีข้อมูลมากหลายที่ต้องทำ จึงต้องหาตัวช่วย ด้วยการใช้ Calculation ดังต่อไปนี้
สมมุติว่า
- Field A Type เป็น Number
- Field B Type เป็น Text
ต้องการส่งค่า field A ให้ field B โดยเอา format ที่จัดไว้ดีแล้วมาด้วย เช่น ส่งค่า 123,456 ไป ก็อย่าให้เอาเครื่องหมาย "," ออก ว่างั้นเหอะ
มาสูตรกัน อย่างแรก็ให้เปลี่ยน type ของ field B จาก text ธรรมดา ให้เป็น calculation แล้ว copy สูตรด้านล่างนี้ไปใส่ได้เลย
"$" &
Case(
A > 999999999,
Left(A, Length(Int(A))-9) & "," &
Middle(A, Length(Int(A)) - 8, 3) & "," &
Middle(A, Length(Int(A)) - 5, 3) & "," &
Right(Int(A),3) & "."&
If(Length(A - Int(A))<2, "0"&(A - Int(A)), (A - Int(A))),
A > 999999,
Left(A, Length(Int(A))-6) & "," &
Middle(A, Length(Int(A)) - 5, 3) & "," &
Right(Int(A),3) & "."&
If(Length(A - Int(A))<2, "0"&(A - Int(A)), (A - Int(A))),
A > 999,
Middle(A, 1, Length(Int(A)) - 3) & "," &
Right(Int(A),3) &"."&
If(Length(A - Int(A))<2, "0"&(A - Int(A)), (A - Int(A))) ,
A)
เราก็จะสามารถคงเครื่องหมาย "," เอาไว้ได้ ในตัวอย่าง เขาจะเริ่มด้วยเครื่องหมาย $ นะ หากไม่ต้องการก็ลบ "$" & ออกไปซะ
ผลลัพธ์มันจะสร้างทศนิยม 2 ตำแหน่งให้ด้วย หากไม่ต้องการเอา ชุดนี้ออก & "."& xxxxxxxxxx เช่น ของชุดที่ A น้อยกว่า 999 ก็ให้เอา ชุดนี้ออก &"."&
If(Length(A - Int(A))<2, "0"&(A - Int(A)), (A - Int(A))) อย่าเผลอลบเลยไปล่ะ เดี๋ยว script จะทำงานพลาด
ลองเอาไปประยุกต์ใช้งานกันเองนะครับ