ด้วย Statement ใน Excel VBA
ด้วยคำสั่งใช้ใน VBA เพื่อเข้าถึงคุณสมบัติและวิธีการทั้งหมดของวัตถุที่กล่าวถึง เราจำเป็นต้องจัดหาวัตถุ VBA ที่เราอ้างถึงก่อนจากนั้นปิดคำสั่ง With ด้วยEnd Withจากนั้นภายในคำสั่งนี้เราสามารถดำเนินการเปลี่ยนแปลงคุณสมบัติและวิธีการทั้งหมดของวัตถุที่กล่าวถึงได้
ด้านล่างนี้คือไวยากรณ์ของ With Statement ใน VBA
ด้วย [OBJECT] [Code …ต้องทำอะไรบ้าง?] ปิดท้ายด้วย
ออบเจ็กต์ไม่ใช่อะไรนอกจากช่วงของเซลล์หรือเซลล์ที่เราอ้างถึงจากนั้นเราสามารถเปลี่ยนคุณสมบัติและดำเนินการตามวิธีการทั้งหมดที่เกี่ยวข้องกับเซลล์หรือเซลล์นั้น ๆ
วิธีใช้กับ Statement ใน Excel VBA
ด้านล่างนี้เป็นตัวอย่างบางส่วนที่จะใช้กับ Statement ใน Excel VBA
คุณสามารถดาวน์โหลด VBA พร้อมเทมเพลต Excel ได้ที่นี่ - VBA With Excel Templateตัวอย่าง # 1
สมมติว่าคุณมีค่าบางอย่างในเซลล์ A1 ฉันได้ป้อนข้อความเป็น "Excel VBA" ในเซลล์ A1
ตอนนี้สำหรับเซลล์นี้ฉันต้องทำงานบางอย่างเช่นการจัดรูปแบบใน excel
ฉันต้องการเปลี่ยนขนาดตัวอักษรชื่อแบบอักษรและสีภายในแทรกเส้นขอบ ฯลฯ ... โดยทั่วไปสิ่งที่เราทำคืออันดับแรกเราอ้างอิงเซลล์โดยใช้วัตถุ VBA RANGE
รหัส:
Sub With_Example1 () ช่วง ("A1") End Sub
ตอนนี้เพื่อเปลี่ยนขนาดตัวอักษรเราเข้าถึงคุณสมบัติ "แบบอักษร" ของเซลล์นี้
ภายใต้คุณสมบัติ FONT เราเข้าถึงคุณสมบัติ Size และป้อนขนาดโดยใส่เครื่องหมายเท่ากับ
รหัส:
Sub With_Example1 () ช่วง ("A1") Font.Size = 15 End Sub
ในทำนองเดียวกันเราทำงานจัดรูปแบบอื่น ๆ ดังที่แสดงด้านล่าง
รหัส:
Sub With_Example1 () Range ("A1"). Font.Size = 15 Range ("A1"). Font.Name = "Verdana" Range ("A1"). Interior.Color = vbYellow Range ("A1"). พรมแดน .LineStyle = xlContinuous End Sub
สิ่งนี้จะทำงานที่กล่าวถึงทั้งหมด แต่ถ้าคุณดูโค้ดเพื่อดำเนินการทุกกิจกรรมการจัดรูปแบบเราได้ให้ที่อยู่เซลล์ทุกครั้งสิ่งนี้จะทำให้โค้ดดูยาวและใช้เวลานาน
ตอนนี้เราจะใช้คำสั่ง VBA With เพื่อลดการป้อนที่อยู่เซลล์ทุกครั้ง เปิดด้วยคำสั่งใน Excel VBA และจัดหาที่อยู่เซลล์
รหัส:
Sub With_Example1 () With Range ("A1") End Sub
ภายในคำสั่ง With ใส่จุดเพื่อดูคุณสมบัติและวิธีการทั้งหมดของเซลล์ A1
กิจกรรมการจัดรูปแบบอันดับแรกคือการเปลี่ยนขนาดตัวอักษรดังนั้นให้เข้าถึง FONT และภายใต้คุณสมบัติ SIZE การเข้าถึง
รหัส:
Sub With_Example1 () With Range ("A1") .Font.Size = 15 End Sub
ในทำนองเดียวกันให้ใส่รหัสการจัดรูปแบบอื่น ๆ และปิด VBA ด้วย Statement
รหัส:
ย่อย With_Example1 () พร้อม Range ("A1") .Font.Size = 15 .Font.Name = "Verdana" .Interior.Color = vbYellow .Borders.LineStyle = xl ต่อท้ายด้วย End Sub
เรียกใช้รหัสเพื่อดูการจัดรูปแบบทั้งหมดในวัตถุที่กล่าวถึงเช่นเซลล์ A1
ดังนั้นการจัดรูปแบบทั้งหมดจึงใช้กับเซลล์ ดูว่าเทคนิคนี้เจ๋งแค่ไหน
ตัวอย่าง # 2
ตัวอย่างเช่นหากคุณต้องการเปลี่ยนคุณสมบัติทั้งหมดที่เกี่ยวข้องกับฟอนต์คุณสามารถพูดถึงเซลล์และคุณสมบัติ FONT ได้
รหัส:
Sub With_Example2 () With Range ("A1") แบบอักษรลงท้ายด้วย End Sub
ภายใน vba With Statement เราจะเห็นรายการ IntelliSense ซึ่งจะแสดงคุณสมบัติและวิธีการที่เกี่ยวข้องกับคุณสมบัติ FONT เท่านั้น
เราสามารถทำกิจกรรมใดก็ได้ในตอนนี้
รหัส:
Sub With_Example2() With Range("A1").Font .Bold = True 'Font will be Bold .Color = vbAlias 'Font color will be Alias .Italic = True 'Font will be italic style .Size = 20 ' Font size will be 20 .Underline = True 'Font will be underlined End With End Sub
The result of this will be as shown below.
Example #3
Below code will access only cell border-related properties.
Code:
Sub With_Example3() With Range("B2").Borders .Color = vbRed 'Border color will be red .LineStyle = xlContinuous 'Full border .Weight = xlThick 'Thick border End With End Sub
The result of this code is as follows.
Things to Remember
- With statement is used to minimize the code.
- We need to supply object first for With statement.
- Once the specific object is supplied we can access only that object’s properties and methods.