Active Cell ใน Excel VBA
เซลล์ที่ใช้งานอยู่คือเซลล์ที่เลือกไว้ในแผ่นงานเซลล์ที่ใช้งานอยู่ใน VBA สามารถใช้เช่นการอ้างอิงเพื่อย้ายไปยังเซลล์อื่นหรือเปลี่ยนคุณสมบัติของเซลล์ที่ใช้งานเดียวกันหรือการอ้างอิงเซลล์จากเซลล์ที่ใช้งานอยู่เซลล์ที่ใช้งานอยู่ใน VBA สามารถ เข้าถึงได้โดยใช้เมธอด application.property กับเซลล์ที่ใช้งานคีย์เวิร์ด
ในการทำงานอย่างมีประสิทธิภาพกับการเข้ารหัส VBA สิ่งสำคัญคือต้องเข้าใจแนวคิดของคุณสมบัติของวัตถุช่วงและเซลล์ใน VBA ในแนวคิดเหล่านี้มีอีกแนวคิดหนึ่งที่คุณต้องพิจารณานั่นคือ“ VBA Active Cell”
ใน excel มีเซลล์หลายล้านเซลล์และข้อสงสัยของคุณคือเซลล์ที่ใช้งานอยู่ สำหรับตัวอย่างดูภาพด้านล่าง
ในรูปด้านบนเรามีเซลล์หลายเซลล์ในการค้นหาว่าเซลล์ใดเป็นเซลล์ที่ใช้งานอยู่มันง่ายมากไม่ว่าเซลล์ใดจะถูกเลือกในขณะนี้เรียกว่า "Active Cell" ใน VBA
หากเซลล์ที่ใช้งานของคุณไม่ปรากฏในหน้าต่างของคุณให้ดูที่กล่องชื่อมันจะแสดงที่อยู่ของเซลล์ที่ใช้งานอยู่ในที่อยู่ของเซลล์ที่ใช้งานอยู่ด้านบนคือ B3
แม้ว่าเซลล์จำนวนมากจะถูกเลือกเป็นช่วงของเซลล์อะไรก็ตามที่เซลล์แรกอยู่ในการเลือกจะกลายเป็นเซลล์ที่ใช้งานอยู่ ตัวอย่างเช่นดูภาพด้านล่าง
# 1 - การอ้างอิงใน Excel VBA
ในบทความก่อนหน้านี้เราได้เห็นวิธีการอ้างอิงเซลล์ใน VBA โดยคุณสมบัติ Active Cell เราสามารถอ้างอิงเซลล์
ตัวอย่างเช่นหากเราต้องการเลือกเซลล์ A1 และแทรกค่า“ สวัสดี” เราสามารถเขียนได้สองวิธี ด้านล่างนี้เป็นวิธีการเลือกเซลล์และแทรกค่าโดยใช้ออบเจ็กต์ VBA“ RANGE”
รหัส:
Sub ActiveCell_Example1 () ช่วง ("A1") เลือกช่วง ("A1") ค่า = "สวัสดี" End Sub
ขั้นแรกจะเป็นการเลือกเซลล์ A1 “ ช่วง (“ A1”) เลือก”
จากนั้นจะแทรกค่า“ สวัสดี” ในเซลล์ A1 ช่วง (“ A1”) ค่า =“ สวัสดี”
ตอนนี้ฉันจะลบช่วงบรรทัด(“ A1”) ค่า =“ สวัสดี”และใช้คุณสมบัติ Active Cell เพื่อแทรกค่า
รหัส:
Sub ActiveCell_Example1 () Range ("A1") เลือก ActiveCell.Value = "Hello" End Sub
ในทำนองเดียวกันขั้นแรกจะเลือกเซลล์ A1 “ ช่วง (“ A1”) เลือก”
แต่ที่นี่ฉันใช้ActiveCell.Value =“ Hello”แทนRange (“ A1”) Value =“ Hello”
สาเหตุที่ฉันใช้คุณสมบัติ Active Cell เพราะเมื่อฉันเลือกเซลล์ A1 มันจะกลายเป็นเซลล์ที่ใช้งานอยู่ ดังนั้นเราสามารถใช้คุณสมบัติ Excel VBA Active Cell เพื่อแทรกค่า
# 2 - ที่อยู่เซลล์ที่ใช้งานค่าแถวและหมายเลขคอลัมน์
เพื่อให้เข้าใจได้ดียิ่งขึ้นให้แสดงที่อยู่ของเซลล์ที่ใช้งานอยู่ในกล่องข้อความ ตอนนี้ดูภาพด้านล่าง
ในภาพด้านบนเซลล์ที่ใช้งานอยู่คือ“ B3” และค่าคือ 55 ลองเขียนโค้ดใน VBA เพื่อรับที่อยู่ของเซลล์ที่ใช้งานอยู่
รหัส:
ย่อย ActiveCell_Example2 () MsgBox ActiveCell.Address End Sub
เรียกใช้รหัสนี้โดยใช้ปุ่ม F5 หรือด้วยตนเองจากนั้นจะแสดงที่อยู่ของเซลล์ที่ใช้งานอยู่ในกล่องข้อความ
เอาท์พุต:
โค้ดด้านล่างจะแสดงค่าของเซลล์ที่ใช้งานอยู่ในทำนองเดียวกัน
รหัส:
ย่อย ActiveCell_Example2 () MsgBox ActiveCell.Value End Sub
เอาท์พุต:
ด้านล่างโค้ดจะแสดงหมายเลขแถวของเซลล์ที่ใช้งานอยู่
รหัส:
ย่อย ActiveCell_Example2 () MsgBox ActiveCell.Row End Sub
เอาท์พุต:
ด้านล่างรหัสจะแสดงหมายเลขคอลัมน์ของเซลล์ที่ใช้งานอยู่
รหัส:
ย่อย ActiveCell_Example2 () MsgBox ActiveCell.Column End Sub
เอาท์พุต:
# 3 - พารามิเตอร์ของ Active Cell ใน Excel VBA
คุณสมบัติ Active Cell มีพารามิเตอร์เช่นกัน หลังจากป้อนคุณสมบัติ ActiveCell วงเล็บเปิดเพื่อดูพารามิเตอร์
การใช้พารามิเตอร์นี้เราสามารถอ้างถึงเซลล์อื่นได้เช่นกัน
ตัวอย่างเช่นActiveCell (1,1)หมายถึงเซลล์ใดที่ทำงานอยู่ หากคุณต้องการเลื่อนลงหนึ่งแถวไปด้านล่างคุณสามารถใช้ActiveCell (2,1)ที่นี่ 2 ไม่ได้หมายความว่าให้เลื่อนลงสองแถวแทนที่จะเป็นเพียงแถวเดียวในทำนองเดียวกันหากคุณต้องการย้ายหนึ่งคอลัมน์ไปทางขวา นี่คือรหัสActiveCell (2,2)
สำหรับตัวอย่างดูภาพด้านล่าง
ในภาพด้านบนเซลล์ที่ใช้งานอยู่คือ A2 เพื่อแทรกค่าให้กับเซลล์ที่ใช้งานอยู่ให้คุณเขียนโค้ดนี้
รหัส:
ActiveCell.Value =“ Hiiii”หรือActiveCell (1,1) .Value =“ Hiiii”
เรียกใช้รหัสนี้ด้วยตนเองหรือผ่านปุ่ม F5 ซึ่งจะแทรกค่า“ Hiiii” ลงในเซลล์
ตอนนี้ถ้าคุณต้องการแทรกค่าเดียวกันลงในเซลล์ด้านล่างคุณสามารถใช้รหัสนี้ได้
รหัส:
ActiveCell (2,1) .Value =“ Hiiii”
สิ่งนี้จะแทรกค่าลงในเซลล์ด้านล่างเซลล์ที่ใช้งานอยู่
หากคุณต้องการแทรกค่าลงในคอลัมน์เดียวคุณสามารถใช้รหัสนี้ได้
รหัส:
ActiveCell (1,2) .Value =“ Hiiii”
สิ่งนี้จะแทรก“ Hiiii” ไปยังเซลล์คอลัมน์ถัดไปของเซลล์ที่ใช้งานอยู่
เช่นนี้เราสามารถอ้างอิงเซลล์ใน VBA โดยใช้ Active Cell Property
หวังว่าคุณจะสนุกกับมัน ขอขอบคุณที่สละเวลากับเรา
คุณสามารถดาวน์โหลดเทมเพลต VBA Active Cell Excel ได้ที่นี่: - VBA Active Cell Template