Giúp code lấy tên và đuôi từ 1 danh sách cho trước (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

minhtuan55

Thành viên bị đình chỉ hoạt động
Thành viên bị đình chỉ hoạt động
Tham gia
23/3/16
Bài viết
705
Được thích
52
Chào cả nhà GPE . CHúc tất cả mọi người năm mới sức khỏe , làm ăn phát tài, hoan hĩ, từ bi, thanh tịnh..
Em có 1 danh sách gồm Full đường dẫn như ảnh ( tầm 5000 dòng ) . Em muốn code lấy tên và đuôi thôi, Em không muốn dùng công thức vì nặng file
Xin chân thành cảm ơn !

1551140020949.png
 

File đính kèm

Bạn thử code sau xem được không ạ:
Mã:
Option Explicit

Sub Mazda()
    Dim Arr(), i As Long, j As Long, lr As Long, sh As Worksheet
    Const txtA As String = "\": Const txtB As String = ""
    Const ChuoiGiongNhau As Long = 35
    Set sh = Sheet1: lr = sh.Range("A10000").End(xlUp).Row
    Arr = sh.Range("A2:A" & lr).Value
    For i = LBound(Arr) To UBound(Arr)
        For j = LBound(Arr, 2) To UBound(Arr, 2)
            Arr(i, j) = Replace(Arr(i, j), txtA, txtB, Start:=ChuoiGiongNhau)
        Next
    Next
    sh.Range("C2").Resize(i - 1).Value = Arr
End Sub

hoặc bỏ 1 For:
Mã:
Option Explicit

Sub Mazda2()
    Dim Arr(), i As Long, lr As Long, sh As Worksheet ', j As Long
    Const txtA As String = "\": Const txtB As String = ""
    Const ChuoiGiongNhau As Long = 35
    Set sh = Sheet1: lr = sh.Range("A10000").End(xlUp).Row
    Arr = sh.Range("A2:A" & lr).Value
    For i = LBound(Arr) To UBound(Arr)
'        For j = LBound(Arr, 2) To UBound(Arr, 2)
            Arr(i, 1) = Replace(Arr(i, 1), txtA, txtB, Start:=ChuoiGiongNhau)
'        Next
    Next
    sh.Range("D2").Resize(i - 1).Value = Arr
End Sub
 
Lần chỉnh sửa cuối:
Upvote 0
Mã:
Sub Mazda()
Columns("A:A").Copy Range("B1")
Columns("B:B").Replace "*\", ""
End Sub
Thank bác. Code bác không ổn cho lắm. Copy qua nhieu lần sẻ gây đầy bộ nhớ clipboar .
@phuocam:
Code của bạn dùng hàm copy theo dạng sâu (deep copy, theo ngôn ngữ C++) mà không bảo hàm huỷ nó giải phóng bộ nhớ (công việc quan trọng trong C++) cho nên dẫn đến chảy bộ nhớ (memory leak, cũng ngôn ngữ C++)
Bạn cần bảo thớt "copy" lại cái kết quả test cho thấy chỗ chảy bộ nhớ. Từ đó mới thấy được khuyết điểm code mình. :rolleyes::rolleyes::rolleyes:
 
Upvote 0
Web KT

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

Back
Top Bottom