ด้านล่างเราจะดูโปรแกรมใน Excel VBA นั่น เขียนช่วง Excel ไปยังไฟล์ข้อความ CSV (ค่าที่คั่นด้วยเครื่องหมายจุลภาค) .
สถานการณ์:
สูตร excel เพื่อสร้างตัวเลขตามลำดับ
สถานที่ ปุ่มคำสั่ง บนเวิร์กชีตของคุณและเพิ่มบรรทัดโค้ดต่อไปนี้:
1. ขั้นแรก เราประกาศตัวแปรที่เรียกว่า myFile ของประเภท String วัตถุที่เรียกว่า rng ของประเภท Range ตัวแปรที่เรียกว่า cellValue ของประเภท Variant ตัวแปรที่เรียกว่า i ของประเภท Integer และตัวแปรที่เรียกว่า j ของประเภท Integer เราใช้ตัวแปร Variant ที่นี่เนื่องจากตัวแปร Variant สามารถเก็บค่าประเภทใดก็ได้
ไม่มีmyFileเนื่องจาก สตริง, rngเนื่องจากช่วง, ค่าเซลล์เนื่องจาก ตัวแปร, ผมเนื่องจาก จำนวนเต็ม, NSเนื่องจาก จำนวนเต็ม
2. เราจำเป็นต้องระบุพาธแบบเต็มและชื่อไฟล์ของไฟล์
myFile = Application.DefaultFilePath & 'sales.csv'หมายเหตุ: คุณสมบัติ DefaultFilePath ส่งคืนพาธไฟล์เริ่มต้น เมื่อต้องการเปลี่ยนตำแหน่งไฟล์เริ่มต้น บนแท็บ ไฟล์ คลิก ตัวเลือก บันทึก
3. เราเริ่มต้นวัตถุช่วง rng ด้วยช่วงที่เลือก
ชุดrng = การเลือก4. เพิ่มบรรทัดรหัสต่อไปนี้:
เปิดmyFileสำหรับเอาต์พุตเป็น#1หมายเหตุ: คำสั่งนี้อนุญาตให้เขียนไฟล์ได้ เราสามารถอ้างถึงไฟล์เป็น #1 ในช่วงที่เหลือของโค้ดของเรา หากไฟล์นั้นมีอยู่แล้ว ไฟล์นั้นจะถูกลบและสร้างไฟล์ใหม่ที่มีชื่อเดียวกัน
ฟังก์ชันลอจิคัลคือฟังก์ชันที่ทำงานกับค่าที่เป็น
5. เริ่ม วงคู่ .
สำหรับผม = 1ถึงrng.Rows.Countสำหรับเจ = 1ถึงrng.Columns.Count
หมายเหตุ: rng.Rows.Count จะคืนค่าจำนวนแถว (17 ในตัวอย่างนี้) และ rng.Columns.Count จะคืนค่าจำนวนคอลัมน์ (4 ในตัวอย่างนี้)
6. Excel VBA เขียนค่าของเซลล์ไปยังตัวแปร cellValue
cellValue = rng.Cells(i, j).Value7. เพิ่มบรรทัดรหัสต่อไปนี้เพื่อเขียนค่าของ cellValue ลงในไฟล์ข้อความ
ถ้าj = rng.Columns.Countแล้วเขียน#1, cellValue
อื่น
เขียน#1, ค่าเซลล์,
จบ ถ้า
คำอธิบาย: เนื่องจากคำสั่ง If Then Else นั้น Excel VBA จะเริ่มขึ้นบรรทัดใหม่เท่านั้น (เขียน #1, cellValue) เมื่อ j เท่ากับจำนวนคอลัมน์ (ค่าสุดท้ายในแถว) หากต้องการแยกค่าด้วยเครื่องหมายจุลภาค ให้ใช้เขียน #1, cellValue (ด้วยเครื่องหมายจุลภาค)
วิธีใส่ย่อหน้าใน excel
8. อย่าลืมปิดลูปทั้งสอง
ต่อไปNSต่อไปผม
9. ปิดไฟล์
ปิด I#110. เลือกข้อมูลและคลิกปุ่มคำสั่งบนแผ่นงาน
ผลลัพธ์:
ไปที่บทถัดไป: ตัวควบคุม ActiveX