Do không chịu gửi file nên cũng không viết code, chỉ gợi ý thôi:như If iSnumeric(mảng F:G ) = True Then Mảng(F:G) = cStr( mảng F:G)
Có ai bảo phải đưa dữ liệu thật đâu mà mấy ngày không tạo được file giả lập.vì file là dữ liệu cty,
Phần canh giữa tự tìm hiểu nhé vì mình thấy đã là Text thì nằm bên trái mới hợp lý.Cám ơn anh @Hoàng Tuấn 868 !!!
File đây anh. Mong anh chỉnh code cho cột F và Cột G là Text, vì dữ liệu gốc có cả số và Text. và canh giữa nha anh.
Mình không động gì đến Border cả, bên máy mình không có hai hiện tượng bạn mô tả.Cám ơn anh @Hoàng Tuấn 868 nhiều !!!
Nhưng sao code Border tới dòng 211, và dòng 211 có chữ #NA vậy anh??
Cái này để mình xem sao.Dữ liệu tới dòng 75 thôi anh, mà Border tới dòng 211, và dòng 211 có chữ #NA,
Vậy bạn chỉ cần trên thanh công cụ hiện là Text hay dữ liệu hai cột là dạng Text vậy.mà sao trên thanh công cụ Home, nó khong hiện là Text mà hiên General anh (cột F và G)
Bạn kiểm tra lại nhé.là do fileNguon có công thức tới dòng 211, đã xóa công thức, nhưng dòng cuối vẫn có chữ #NA, mong anh giúp coi lại file nguồn
Đây là do bạn lập file không giống với file gốc của code này, tiêu đề file gốc có 5 dòng, còn bạn làm file giả lập lại bớt đi một dòng còn 4 nên mới bị #NA ở dòng cuối.nhưng dòng cuối vẫn có chữ #NA, mong anh giúp coi lại file nguồn
. . . . . . . . . . . . . . .. . .định dạng #,##0.00.
For j = 1 To fd.Sheets.Count
For p = 1 To .Sheets.Count
If fd.Sheets(j).Name = .Sheets(p).Name Then 'Nêu ten file nguon giong ten file dich thi lay du lieu
Set sd = fd.Sheets(j): lrd = sd.Cells(Rows.Count, 1).End(xlUp).Row
Set sn = openfile.Sheets(p): lrn = sn.Cells(Rows.Count, 1).End(xlUp).Row
mn = sn.Range("A6:P" & lrn): sd.Range("A" & lrd + 1).Resize(lrn - 5, 16) = mn
mnp = sn.Range("F6:G" & lrn)
ReDim mnp1(1 To UBound(mnp, 1), 1 To 2)
For q1 = 1 To 2
For q = 1 To UBound(mnp, 1)
If mn(q, 3) <> "" Then ' them
mnp1(q, q1) = mnp(q, q1)
End If ' them
Next q
Next q1
sd.Range("F5").Resize(q - 1, 2) = mnp1
sd.Range("A" & lrd + 1).Resize(lrn - 5, 16).Borders.LineStyle = True
lrd = sd.Cells(Rows.Count, 1).End(xlUp).Row
sd.Range("I5:J" & lrd).NumberFormat = "#,##0.00"
j = j + 1
End If
Next p
Next j
End With