Online Reference

Home

Microsoft Reference
Knowledge Developer Database Internet Resource Forum
VBA
Input / Output Function
ดาวน์โหลดคู่มือ

Print # Statement

VBA Statement, เขียนข้อมูลตามรูปแบบที่แสดงไปที่ไฟล์ Sequential

ไวยากรณ์

Print # filenumber, [outputlist]

ไวยากรณ์ประโยคคำสั่ง Print # มีรายละเอียดส่วนดังนี้

ส่วน รายละเอียด
filenumber บังคับ, เป็นหมายเลขไฟล์
outputlis ไม่บังคับ, เป็น expression หรือรายการ expression ที่ใช้พิมพ์

การตั้งค่า

อากิวเมนต์ outputlist ตั้งค่าดังนี้

[{Spc(n) / Tab [(n)]}] [expression] [charpos]

การตั้งค่า คำอธิบาย
Spc(n) ใช้การแทรกช่องว่างในผลลัพธ์ส่งออก โดย n เป็นจำนวนของช่องว่างที่แทรก
Tab(n) ใช้กำหนดตำแหน่งจุดแทรกไปที่หมายเลขคอลัมน์ สมบูรณ์ โดย n เป็นหมายเลขคอลัมน์ ใช้ Tab ที่ไม่มีอากิวเมนต์กำหนดตำแหน่งจุดแทรกที่จุดเริ่มต้นของพื้นที่การพิมพ์ต่อไป
expression numeric expression หรือ string expression ที่พิมพ์
charpos ระบุจุดแทรกสำหรับอักษรต่อไป ใช้เครื่องหมาย semicolon (;) เพื่อกำหนดตำแหน่งจุดแทรกทันที หลังจากตัวอักษรสุดท้ายแสดงออกมา ใช้ Tab (n) กำหนดตำแหน่งจุดแทรกที่หมายเลขคอลัมน์ สมบูรณ์ ใช้ Tab ที่ไม่อากิวเมนต์ กำหนดตำแหน่ง แทรกที่จุดเริ่มต้นของพื้นที่การพิมพ์ต่อไป ถ้า ละ charpos ตัวอักษรต่อไปจะพิมพ์ในบรรทัดต่อไป

ลักษณะการประยุกต์

ข้อมูลที่เขียนด้วย Print # มักจะอ่านจากไฟล์ด้วย Line Input # หรือ Input

ถ้าละ outputlist และรวมเฉพาะรายการที่แยกหลัง filenumber และบรรทัดว่างได้รับการพิมพ์ไปที่ไฟล์ หลาย expression สามารถแยกด้วยช่องว่าง หรือ semicolon ช่องว่างมีผลเหมือนกับ semicolon

สำหรับข้อมูล Boolean ทั้ง True และ False ได้รับการพิมพ์ คีย์เวิร์ด True และ False ไม่มีการแปล

ข้อมูล Date ได้รับการเขียนด้วยการใช้รูปแบบมาตรฐาน short date ที่ระบบของเครื่องที่ใช้รู้จัก เมื่อส่วนวันที่หรือเวลาหายไปหรือเป็นศูนย์ ส่วนที่มีอยู่จะได้รับการเขียนลงสู่ไฟล์

ไม่มีการเขียนข้อมูลลงสู่ไฟล์ ถ้าข้อมูลของ outputlist ว่างเปล่า แต่ถ้าข้อมูลของ outputlist เป็น Null ค่า Null จะได้รับการเขียนลงสู่ไฟล์

สำหรับข้อมูล Error ที่มีผลลัพธ์ปรากฏเป็นรหัสความผิดพลาด คีย์เวิร์ด Error จะไม่มีการแปล

ข้อมูลทั้งหมดที่เขียนลงไฟล์ด้วยการใช้ Print # ต้องระวังการตั้งค่า International เนื่องจากการจัดรูปแบบข้อมูล จากการใช้เครื่องหมายแบ่งทศนิยม เนื่องจาก Print # เขียนภาพของข้อมูลลงสู่ไฟล์ จึงต้องลดการจำกัด เพื่อทำให้การพิมพ์ถูกต้อง ถ้าใช้ Tab ที่ไม่มีอากิวเมนต์ เพื่อย้ายตำแหน่งการพิมพ์ ไปที่พื้นที่การพิมพ์ต่อไป Print # สามารถเขียนช่องว่างระหว่างการพิมพ์ฟิลด์ไปที่ไฟล์

หมายเหตุ ถ้ามีความผิดพลาดเกิดขึ้น ต้องอ่านข้อมูลจากไฟล์ด้วยการใช้ ประโยคคำสั่ง Input #ให้ใช้ประโยคคำสั่ง Write # แทนที่ Print # เพื่อเขียนข้อมูลลงสู่ไฟล์ การใช้ Write # ทำให้มั่นใจว่า Integrity ของแต่ละฟิลด์ข้อมูล แยกโดยตัวแบ่งข้อมูล ดังนั้น ทำให้สามารถ อ่านกลับโดยการใช้ Input # การใช้ Write # ทำให้มั่นใจว่ามีการอ่านอย่างถูกต้องในทุก locale

ดูเพิ่มเติม

Open Statement, เมธอด Print, ฟังก์ชัน Spc, ฟังก์ชัน Tab, Write # Statement

ตัวอย่าง

ตัวอย่างการใช้ประโยคคำสั่ง print

' เปิดไฟล์สำหรับผลลัพธ์
Open "TESTFILE" For Output As #1
' พิมพ์ข้อความไปที่ไฟล์
Print #1, "This is a Test"
' พิมพ์แถวว่างในไฟล์
Print #1,
' พิมพ์ใน 2 พื้นที่พิมพ์
Print #1, "Zone 1"; Tab; "Zone 2"
' แยกข้อความด้วยช่องว่าง
Print #1, "Hello"; " "; "World"
' พิมพ์ 5 ช่องว่างข้างหน้า
Print #1, Spc(5); "5 ช่องว่างข้างหน้า"
' พิมพ์คำที่คอลัมน์ 10
Print #1, Tab(10); "Hello"

' กำหนดค่า boolean, date, null และ error
Dim MyBool, MyDate, MyNull, MyError

MyBool = False: MyDate = #February 12, 2002#: MyNull = Null
MyError = CVErr(32767)

' True, False, Null และ Error จะได้การแปลด้วยการตั้งค่า locale
' Date จะได้รับการด้วยรูปแบบ short date
Print #1, MyBool; " is a boolean value"
Print #1, MyDate; " is a date"
Print #1, MyNull; " is a null value"
Print #1, MyError; " is an error value"

' ปิดไฟล์
Close #1