Note: The other languages of the website are Google-translated. Back to English
Đăng nhập  \/ 
x
or
x
Đăng ký  \/ 
x

or

Làm thế nào để đổi tên tất cả các tên hình ảnh trong một thư mục theo danh sách các ô trong Excel?

Bạn đã bao giờ thử đổi tên hình ảnh theo danh sách các ô trong trang tính chưa? Nếu vậy, bạn có thủ thuật nào để nhanh chóng xử lý công việc mà không cần đổi tên từng cái một không? Trong bài viết này, tôi giới thiệu hai mã VBA để xử lý nhanh công việc này trong Excel.

Đổi tên tất cả các tên hình ảnh trong một thư mục


Đổi tên tất cả các tên hình ảnh trong một thư mục

Để đổi tên tất cả các tên hình ảnh trong một thư mục được chỉ định, trước tiên bạn phải liệt kê các tên gốc trong trang tính.

1. nhấn Alt + F11 các phím để kích hoạt Microsoft Visual Basic cho các ứng dụng cửa sổ.

2. nhấp chuột Chèn > Mô-đun và dán mã bên dưới vào tập lệnh.

VBA: Lấy tên ảnh của một thư mục

Sub PictureNametoExcel()
'UpdatebyExtendoffice201709027
    Dim I As Long
    Dim xRg As Range
    Dim xAddress As String
    Dim xFileName As String
    Dim xFileDlg As FileDialog
    Dim xFileDlgItem As Variant
    On Error Resume Next
    xAddress = ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Select a cell to place name list:", "KuTools For Excel", xAddress, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    Application.ScreenUpdating = False
    Set xRg = xRg(1)
    xRg.Value = "Picture Name"
    With xRg.Font
    .Name = "Arial"
    .FontStyle = "Bold"
    .Size = 10
    End With
    xRg.EntireColumn.AutoFit
    Set xFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
    I = 1
    If xFileDlg.Show = -1 Then
        xFileDlgItem = xFileDlg.SelectedItems.Item(1)
        xFileName = Dir(xFileDlgItem & "\")
        Do While xFileName <> ""
            If InStr(1, xFileName, ".jpg") + InStr(1, xFileName, ".png") + InStr(1, xFileName, ".img") + InStr(1, xFileName, ".ioc") + InStr(1, xFileName, ".bmp") > 0 Then
                xRg.Offset(I).Value = xFileDlgItem & "\" & xFileName
                I = I + 1
            End If
            xFileName = Dir
        Loop
    End If
    Application.ScreenUpdating = True
End Sub

3. nhấn F5 để chạy mã và một hộp thoại bật ra để nhắc bạn chọn một ô để xuất danh sách tên. Xem ảnh chụp màn hình:
doc đổi tên ảnh trong thư mục 1

4. nhấp chuột OK và để chọn thư mục được chỉ định có tên ảnh bạn cần liệt kê trong trang tính hiện tại. Xem ảnh chụp màn hình:
doc đổi tên ảnh trong thư mục 2

5. nhấp chuột OK. Tên hình ảnh đã được liệt kê trên trang hoạt động.

Sau đó, bạn có thể đổi tên ảnh.

1. nhấn Alt + F11 các phím để kích hoạt Microsoft Visual Basic cho các ứng dụng cửa sổ.

2. nhấp chuột Chèn > Mô-đun và dán mã bên dưới vào tập lệnh.

VBA: Lấy đổi tên ảnh

Sub RenameFile()
'UpdatebyExtendoffice20170927
    Dim I As Long
    Dim xLastRow As Long
    Dim xAddress As String
    Dim xRgS, xRgD As Range
    Dim xNumLeft, xNumRight As Long
    Dim xOldName, xNewName As String
    On Error Resume Next
    xAddress = ActiveWindow.RangeSelection.Address
    Set xRgS = Application.InputBox("Select Original Names(Single Column):", "KuTools For Excel", xAddress, , , , , 8)
    If xRgS Is Nothing Then Exit Sub
    Set xRgD = Application.InputBox("Select New Names(Single Column):", "KuTools For Excel", , , , , , 8)
    If xRgD Is Nothing Then Exit Sub
    Application.ScreenUpdating = False
    xLastRow = xRgS.Rows.Count
    Set xRgS = xRgS(1)
    Set xRgD = xRgD(1)
    For I = 1 To xLastRow
        xOldName = xRgS.Offset(I - 1).Value
        xNumLeft = InStrRev(xOldName, "\")
        xNumRight = InStrRev(xOldName, ".")
        xNewName = xRgD.Offset(I - 1).Value
        If xNewName <> "" Then
            xNewName = Left(xOldName, xNumLeft) & xNewName & Mid(xOldName, xNumRight)
            Name xOldName As xNewName
        End If
    Next
    MsgBox "Congratulations! You have successfully renamed all the files", vbInformation, "KuTools For Excel"
    Application.ScreenUpdating = True
End Sub

3. nhấn F5 để chạy mã và một hộp thoại bật ra để nhắc bạn chọn tên ảnh gốc mà bạn muốn thay thế. Xem ảnh chụp màn hình:
doc đổi tên ảnh trong thư mục 3

4. nhấp chuột OK, và chọn tên mới bạn muốn thay thế tên ảnh trong hộp thoại thứ hai. Xem ảnh chụp màn hình:
doc đổi tên ảnh trong thư mục 4

5. nhấp chuột OK, một hộp thoại bật ra để nhắc bạn rằng tên ảnh đã được thay thế thành công.
doc đổi tên ảnh trong thư mục 5

6. Bấm OK và tên hình ảnh đã được thay thế bằng các ô trong trang tính.

doc đổi tên ảnh trong thư mục 6
mũi tên doc xuống
doc đổi tên ảnh trong thư mục 7

Các bài báo tương đối:


Các công cụ năng suất văn phòng tốt nhất

Kutools cho Excel giải quyết hầu hết các vấn đề của bạn và tăng 80% năng suất của bạn

  • Tái sử dụng: Chèn nhanh công thức phức tạp, biểu đồ và bất cứ thứ gì bạn đã sử dụng trước đây; Mã hóa ô với mật khẩu; Tạo danh sách gửi thư và gửi email ...
  • Super Formula Bar (dễ dàng chỉnh sửa nhiều dòng văn bản và công thức); Bố cục đọc (dễ dàng đọc và chỉnh sửa số lượng ô lớn); Dán vào Dải ô đã Lọchữu ích. Cảm ơn !
  • Hợp nhất các ô / hàng / cột mà không làm mất dữ liệu; Nội dung phân chia ô; Kết hợp các hàng / cột trùng lặp... Ngăn chặn các ô trùng lặp; So sánh các dãyhữu ích. Cảm ơn !
  • Chọn trùng lặp hoặc duy nhất Hàng; Chọn hàng trống (tất cả các ô đều trống); Tìm siêu và Tìm mờ trong Nhiều Sổ làm việc; Chọn ngẫu nhiên ...
  • Bản sao chính xác Nhiều ô mà không thay đổi tham chiếu công thức; Tự động tạo tài liệu tham khảo sang Nhiều Trang tính; Chèn Bullets, Hộp kiểm và hơn thế nữa ...
  • Trích xuất văn bản, Thêm Văn bản, Xóa theo Vị trí, Xóa không gian; Tạo và In Tổng số phân trang; Chuyển đổi giữa nội dung ô và nhận xéthữu ích. Cảm ơn !
  • Siêu lọc (lưu và áp dụng các lược đồ lọc cho các trang tính khác); Sắp xếp nâng cao theo tháng / tuần / ngày, tần suất và hơn thế nữa; Bộ lọc đặc biệt bằng cách in đậm, in nghiêng ...
  • Kết hợp Workbook và WorkSheets; Hợp nhất các bảng dựa trên các cột chính; Chia dữ liệu thành nhiều trang tính; Chuyển đổi hàng loạt xls, xlsx và PDFhữu ích. Cảm ơn !
  • Hơn 300 tính năng mạnh mẽ. Hỗ trợ Office / Excel 2007-2019 và 365. Hỗ trợ tất cả các ngôn ngữ. Dễ dàng triển khai trong doanh nghiệp hoặc tổ chức của bạn. Đầy đủ các tính năng dùng thử miễn phí 30 ngày. Đảm bảo hoàn tiền trong 60 ngày.
tab kte 201905

Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều

  • Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
  • Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
  • Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!
officetab dưới cùng
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Sam Jones · 2 years ago
    Hi, i've tried using this however running the 'PictureNametoExcel' macro only returns the first photo file path name. The other photos in the folder wont be listed. Any help would be greatly appreciated.

    Side note: I've tested the 'RenameFile' Macro and that works perfectly

    Thanks
    Sam
    • To post as a guest, your comment is unpublished.
      Dunmoye · 11 months ago
      Hi Sam, Select the cell range. I guess this is as a result of you selecting just one cell