Visual Basic for Applications:
การแทรกค่าลงในสตริง
วิธีการ:
ไม่เหมือนกับภาษาบางภาษาที่มีการแทรกสตริงที่สร้างในตัว VBA ต้องใช้วิธีการที่ต้องทำด้วยตนเองมากขึ้น โดยทั่วไปใช้งานผ่านตัวดำเนินการ &
หรือฟังก์ชัน Format
สำหรับการฝังตัวแปรเข้าไปในสตริง ด้านล่างคือตัวอย่างที่แสดงวิธีการเหล่านี้:
การใช้ตัวดำเนินการ &
:
Dim userName As String
Dim userScore As Integer
userName = "Alice"
userScore = 95
' การเชื่อมต่อสตริงและตัวแปร
Dim message As String
message = "Congratulations, " & userName & "! Your score is " & userScore & "."
Debug.Print message
ผลลัพธ์:
Congratulations, Alice! Your score is 95.
การใช้ฟังก์ชัน Format
:
สำหรับสถานการณ์ที่ซับซ้อนมากขึ้น เช่น การรวมตัวเลขหรือวันที่ที่ได้รับการจัดรูปแบบ ฟังก์ชัน Format
เป็นสิ่งที่มีค่ามาก
Dim currentDate As Date
currentDate = Date
Dim formattedMessage As String
formattedMessage = "Today is " & Format(currentDate, "MMMM dd, yyyy") & ". Have a great day!"
Debug.Print formattedMessage
ผลลัพธ์:
Today is April 15, 2023. Have a great day!
การดำดิ่งลึก
การแทรกสตริงที่เรารู้จักในภาษาโปรแกรมมิ่งสมัยใหม่ เช่น Python หรือ JavaScript ไม่ได้มีอยู่โดยตรงใน VBA จากอดีต นักพัฒนา VBA ต้องพึ่งพาการเชื่อมต่อโดยใช้ &
หรือใช้ฟังก์ชัน Format
สำหรับการใส่ค่าเข้าไปในสตริง ซึ่งอาจทำให้กระบวนการดูยากขึ้นสำหรับสตริงที่ซับซ้อนหรือต้องการการจัดรูปแบบที่เฉพาะเจาะจง ความแตกต่างนี้เน้นย้ำถึงยุคที่ VBA ถูกสร้างขึ้นและการมุ่งเน้นไปที่ความเรียบง่ายโดยตรงมากกว่าความสะดวกสบายสมัยใหม่บางอย่าง
อย่างไรก็ตาม ควรทราบว่า แม้ VBA จะไม่มีการแทรกสตริงที่สร้างไว้ในตัว การเชี่ยวชาญในการใช้ &
สำหรับการเชื่อมต่อที่เรียบง่ายหรือ Format
สำหรับสถานการณ์ที่ซับซ้อนขึ้น ยังคงอนุญาตให้มีการจัดการสตริงที่มีประสิทธิภาพและยืดหยุ่น สำหรับนักพัฒนาที่มาจากภาษาที่มีคุณลักษณะการแทรกสตริงในตัว นี่อาจดูเหมือนเป็นการถอยหลังในตอนแรก แต่วิธีเหล่านี้เสนอระดับของการควบคุมที่เมื่อได้รับการเชี่ยวชาญแล้ว สามารถมีพลังได้อย่างน่าเหลือเชื่อ นอกจากนั้น การย้ายไปยังสภาพแวดล้อม .NET ที่เพิ่มเติม โปรแกรมเมอร์จะพบว่าการแทรกสตริงเป็นคุณลักษณะระดับหนึ่งใน VB.NET ให้วิธีการที่คุ้นเคยและมีประสิทธิภาพมากขึ้นสำหรับการสร้างสตริงแบบไดนามิก ในแง่การปฏิบัติ การเข้าใจความแตกต่างและข้อจำกัดใน VBA สามารถช่วยให้เขียนโค้ดที่มีประสิทธิภาพ อ่านง่าย และช่วยในการเปลี่ยนไปใช้สภาพแวดล้อม Visual Basic ที่ทันสมัยยิ่งขึ้นได้หากมีความจำเป็น