RSS

ฟังก์ชันการเชื่อมข้อมูล

31 Dec

ปกติการเชื่อมข้อมูลเราสามารถใช้เครื่องหมาย & หรือฟังก์ชัน Concatenate มาช่วยได้ ยกตัวอย่างเช่น ต้องการเชื่อมข้อมูลที่อยู่ในช่วงเซลล์ A1:A5 เราสามารถเขียนสูตรได้ดังต่อไปนี้

  1. =A1&A2&A3&A4&A5
  2. =Concatenate(A1,A2,A3,A4,A5)

กรณีที่มีเซลล์จำนวนมากหากจะต้องเชื่อมกันในลักษณะนี้จะเกิดความไม่สะดวก ผมจึงเขียนเป็น Function VBA สำหรับการใช้งานดังกล่าวชื่อว่า Mconc โดยสามารถกำหนดตัวคั่นข้อความได้ด้วย ยกตัวอย่างเช่นหากต้องการเชื่อมข้อความในช่วงเซลล์ A1:A5 แล้วให้แสดงเครื่องหมาย / คั่นระหว่างข้อความ สามารถใช้สูตรได้ดังนี้

=Mconc(A1:A5,”/”)

ซึ่งเทียบเท่ากับ

=A1&”/”&A2&”/”&A3&”/”&A4&”/”&A5

โดย Code VBA ของฟังก์ชั่น Mconc เป็นตามด้านล่างครับ

Function MCONC$(range As range, Optional s As String)
Dim r As range
Dim i As Integer
Dim a() As Variant
For Each r In range
If r <> "" Then
i = i + 1
ReDim Preserve a(i - 1)
a(i - 1) = r
End If
Next r
MCONC = Join(a, s)
End Function

 
Leave a comment

Posted by on 31/12/2011 in Concatenate, Join

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
%d bloggers like this: