Bạn nên tự hỏi mình xem bạn có cần một giải pháp chung chung hay không ( một giải pháp khác của Allen Browne ) hoặc nếu bạn cần nó chỉ cho mục đích hiện tại. Nếu bạn thực sự chỉ cần nó một lần, hãy làm điều đó một cách dễ dàng.
Lưu ý nhỏ, khi nối các danh sách trong mã VBA, hãy tận dụng một mẹo được chuyên gia truy cập lâu năm Trevor Best dạy cho tôi, đó là gắn dấu phân tách ở đầu mỗi giá trị và sau đó sử dụng Mid () để loại bỏ nó tắt. Thay vì điều này bên trong vòng lặp của bạn thông qua các bản ghi con:
If Len(strOutput) = 0 Then
strOutput = NewValue
Else
strOutput = strOutput & ", " & NewValue
End If
... sử dụng cái này bên trong vòng lặp:
strOutput = strOutput & ", " & NewValue
... và sau đó khi bạn thoát khỏi vòng lặp, hãy bỏ dấu phân cách ở đầu:
strOutput = Mid(strOutput, 3)
Điều này có ý nghĩa khắp nơi và đơn giản hóa mã để nối trong nhiều ngữ cảnh.