Ghép chỗi ký tự

Liên hệ QC

Trung Kien Phan

Thành viên mới
Tham gia
13/4/18
Bài viết
29
Được thích
9
Giới tính
Nam
Anh chị có thể chia sẻ giúp em code VBA để nối 2 dữ liệu từ 2 cột excel có trước như hình vẽ.
anh chị giúp em với ạ.
216167
1556353627215.png
 

File đính kèm

  • Ghép nối chuổi data 2 cột.xlsx
    10.8 KB · Đọc: 9
Tham khảo code:
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A4:B14")) Is Nothing Then
    If Target.Column = 1 Then
        Target.Offset(, 2) = Target.Value
    ElseIf Target.Column = 2 Then
        If Target.Value <> "" Then
            Target.Offset(, 1) = Target.Offset(, 1) & " (" & Target.Value & ")"
        End If
    End If
End If
End Sub
 

File đính kèm

  • Ghép nối chuổi data 2 cột.xlsm
    15.8 KB · Đọc: 9
Bạn dùng công thức này xem, mình thấy nếu chỉ ghép 2 cột như vậy thì không cần dùng VBA
=IF(A4="","",IF(B4="",A4,A4&" ("&TEXT(B4,"0.0")&")"))
 
Tham khảo code:
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A4:B14")) Is Nothing Then
    If Target.Column = 1 Then
        Target.Offset(, 2) = Target.Value
    ElseIf Target.Column = 2 Then
        If Target.Value <> "" Then
            Target.Offset(, 1) = Target.Offset(, 1) & " (" & Target.Value & ")"
        End If
    End If
End If
End Sub
Em đã thử nhưng không ổn lắm bác ạ,
Bài đã được tự động gộp:

Bạn dùng công thức này xem, mình thấy nếu chỉ ghép 2 cột như vậy thì không cần dùng VBA
=IF(A4="","",IF(B4="",A4,A4&" ("&TEXT(B4,"0.0")&")"))
Em có làm trên excel rồi. Nhưng file này em đang muốn cải tiến để chạy tự động trên cùng 1 tổ hợp các file khác.
 
Em đã thử nhưng không ổn lắm bác ạ,
Bài đã được tự động gộp:


Em có làm trên excel rồi. Nhưng file này em đang muốn cải tiến để chạy tự động trên cùng 1 tổ hợp các file khác.
Bạn dùng công thức bài #3 thử xem nhé.
Tôi thấy bạn ghi tự động nên viết code, bài của bạn dùng công thức được rồi.
 
Dạ. bài #3 em thấy rất ổn và ngắn gọn.
Tuy nhiên, em đang muốn chuyển sang VBA để đồng bộ anh ạ,
Thế này ah bạn :D
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("A4:B14")) Is Nothing Then
        If Target.Column = 1 And Target.Offset(, 1) = "" Then
            Target.Offset(, 2) = Target.Value
        ElseIf Target.Column = 2 And Target.Value <> "" Then
            Target.Offset(, 1) = Target.Offset(, -1) & " (" & Target.Text & ")"
        ElseIf Target.Column = 2 And Target.Value = "" Then
            Target.Offset(, 1) = Target.Offset(, -1)
        ElseIf Target.Column = 1 And Target.Value <> "" Then
            Target.Offset(, 2) = Target.Value & " (" & Target.Offset(, 1).Text & ")"
        End If
    End If
End Sub
 
=if(B4="";A4;A4&" ("&B4"&")")---- liệu OK không nhỉ????
 

File đính kèm

  • Ghép nối chuổi data 2 cột.xlsm
    20.7 KB · Đọc: 3
=if(B4="";A4;A4&" ("&B4"&")")---- liệu OK không nhỉ????
Không.
Đào mồ một bài bảy tám tháng để cho cái công thức trật lất.
1. đếm số dấu nháy đơn xem (nếu là số lẻ thì chắc chắn là công thức sẽ lỗi)
2. sau khi sửa ngữ pháp thì vẫn ra không đúng yêu cầu.
 
Mình vừa là thành viên mới, vừa là tập tọe excel tí nên mọi người thông cảm.
Công thức này mình test rôi thấy cũng OK
=IF(B4="";A4;A4&" ("&TEXT(B4;",.0")&")")
 
Web KT

Bài viết mới nhất

Back
Top Bottom