Visual Basic for Applications:
การต่อสตริง

วิธีการ:

VBA มีวิธีที่ง่ายดายในการต่อข้อความโดยใช้ตัวดำเนินการ & หรือฟังก์ชัน Concatenate มาดูทั้งสองวิธีพร้อมตัวอย่าง:

  1. การใช้ตัวดำเนินการ &:

ตัวดำเนินการ & เป็นวิธีที่ทั่วไปที่สุดสำหรับการต่อข้อความใน VBA มันเรียบง่ายและมีประสิทธิภาพสำหรับการเชื่อมต่อข้อความหลายๆ อัน

Dim firstName As String
Dim lastName As String
firstName = "Jane"
lastName = "Doe"
' การต่อข้อความ
Dim fullName As String
fullName = firstName & " " & lastName
Debug.Print fullName 'ผลลัพธ์: Jane Doe
  1. การใช้ฟังก์ชัน Concatenate:

สลับกัน, VBA ยังช่วยให้สามารถต่อข้อความโดยการใช้ฟังก์ชัน Concatenate, ซึ่งเป็นประโยชน์โดยเฉพาะเมื่อจัดการกับอาร์เรย์ของข้อความหรือเมื่อคุณต้องการไวยากรณ์ฟังก์ชัน

Dim greetings As String
Dim name As String
greetings = "Hello"
name = "John"
' การต่อข้อความโดยใช้ฟังก์ชัน Concatenate
Dim message As String
message = Application.WorksheetFunction.Concatenate(greetings, " ", name, "!")
Debug.Print message 'ผลลัพธ์: Hello John!

การเลือกระหว่างตัวดำเนินการ & และฟังก์ชัน Concatenate ขึ้นอยู่กับความชอบส่วนบุคคลและความต้องการเฉพาะของโปรเจ็กต์ของคุณ

ศึกษาลึกลงไป

การต่อข้อความเป็นคุณสมบัติพื้นฐานที่แต่ก็ทรงพลังใน VBA, ติดตามรากฐานมาจากภาษาโปรแกรมมิ่งรุ่นเก่าๆ การใช้งานตัวดำเนินการ & ใน VBA สำหรับการต่อข้อความมากกว่าตัวดำเนินการ + ที่ถูกใช้ในภาษาอื่นๆ มากมาย, เน้นย้ำถึงความเน้นของ VBA ในการจัดการข้อความอย่างชัดเจน, จึงหลีกเลี่ยงการไม่ตรงกันของประเภทข้อมูลโดยไม่ตั้งใจและความผิดพลาด

แม้ว่าตัวดำเนินการ & จะมีประสิทธิภาพและถูกใช้กันอย่างแพร่หลาย, แต่ฟังก์ชัน Concatenate ก็โดดเด่นในสถานการณ์ที่ต้องการความชัดเจนเพิ่มเติมหรือการจัดการกรณีการต่อข้อความพิเศษ, เช่น การจัดการกับอาร์เรย์ อย่างไรก็ตาม, สำคัญที่จะต้องทราบว่าเวอร์ชันล่าสุดของ Excel ได้แนะนำฟังก์ชัน TEXTJOIN, ซึ่งอาจมีประสิทธิภาพมากกว่าสำหรับการต่ออาร์เรย์ของข้อความโดยใช้ตัวคั่น, แม้ว่าจะไม่ได้เป็นส่วนหนึ่งของ VBA โดยตรงก็ตาม

เมื่อจัดการกับการจัดการข้อความจำนวนมากหรือแอปพลิเคชันที่จำเป็นต้องพิจารณาประสิทธิภาพ, โปรแกรมเมอร์อาจสำรวจทางเลือกอื่นเช่นการใช้คลาส StringBuilder ใน .NET (เข้าถึงได้ผ่าน COM ใน VBA) สิ่งนี้สามารถเพิ่มประสิทธิภาพได้อย่างมาก, โดยเฉพาะอย่างยิ่งในลูปหรือเมื่อต่อข้อความจำนวนมาก, เนื่องจากมีรูปแบบการใช้หน่วยความจำที่มีประสิทธิภาพมากขึ้น

ในท้ายที่สุด, การเลือกวิธีการที่เหมาะสมสำหรับการต่อข้อความใน VBA ขึ้นอยู่กับความต้องการเฉพาะของคุณ, การพิจารณาประสิทธิภาพ, และความสามารถในการอ่าน ไม่ว่าคุณจะเลือกใช้ความเรียบง่ายของตัวดำเนินการ & หรือความสามารถของฟังก์ชัน Concatenate, การเข้าใจผลกระทบและประสิทธิภาพของแต่ละวิธีเป็นสิ่งสำคัญสำหรับการจัดการข้อความที่มีประสิทธิภาพใน VBA