xin code VBA tự động chỉnh ảnh bằng với ô

Chia sẻ bởi:hands
★★★★★
Quảng cáo

Em hiện tại có 1 file muốn tự động căn chỉnh hình ảnh bằng với kích thước ô trong excel. Em có tìm được 1 code VBA trên mạng nhưng không tự căn chỉnh ảnh kín hết ô được ( ảnh đủ chiều ngang nhưng k đủ chiều cao hoặc ảnh đủ chiều cao nhưng ngang k đủ). Vậy nên em xin được mọi người giúp đỡ chỉnh sửa code VBA hoặc xin code VBA tự căn chỉnh ảnh vừa với ô dán ảnh ạ (hình ảnh kín ô) . Ảnh là sao chép/dán vào excel ạ
Em xin chân thành cảm ơn ạ

Bạn thử code này:

Sub FitPic()
    If TypeName(Selection) = "Picture" Then
        With Selection
            .ShapeRange.LockAspectRatio = False
            .Height = .TopLeftCell.Height - 0.2
            .Width = .TopLeftCell.Width - 0.2
            .Top = .TopLeftCell.Top + 0.1
            .Left = .TopLeftCell.Left + 0.1
        End With
    Else
        MsgBox "Select a picture before running this macro."
    End If
End Sub

Bạn có thể tham khảo hàm chỉnh ảnh bên bài viết bên này:
www.giaiphapexcel.com/diendan/threads/163804/

www.giaiphapexcel.com/diendan/threads/xin-code-vba-t%E1%BB%B1-%C4%91%E1%BB%99ng-ch%E1%BB%89nh-%E1%BA%A3nh-b%E1%BA%B1ng-v%E1%BB%9Bi-%C3%B4.163798/

Kỹ năng giải quyết vấn đề hiệu quả
Khóa học SprinGO phù hợp

Kỹ năng giải quyết vấn đề hiệu quả

Mô tả Nội dung Đánh giá Tài nguyên KỸ NĂNG GIẢI QUYẾT VẤN ĐỀ HIỆU QUẢHiểu đúng vấn đề là một nửa của giải...

Xem khóa học
★★★★★ 5 ★ 1 👤 1 ▥ 0
Quảng cáo

Bạn nên đọc

One Response

  1. hands says:

    Như bài em nhờ trước đó code tương tự mà không có ai trả lời [URL='www.giaiphapexcel.com/diendan/threads/xin-giúp-đỡ-sửa-code-vba-chỉnh-ảnh-vừa-ô.163733/']Link

    Bạn thêm vòng lặp vào sẽ chạy hết các ảnh.

    Bác ơi có thể multiselect được không ạ?

    Có phải ai cũng biết để trả lời được bạn đâu, giả sử có bạn nào đó biết thì cũng chưa chắc có thời gian rảnh mà.

    Dạ vâng! Cảm ơn bác.
    Ý em không phải là mọi người phải trả lời ạ. Em thêm smile buồn vào mà nó không hiện (em đang dùng trình duyệt trên điện thoại)

    Từ code của anh huuthang_bd, mình thêm phần chọn tất cả ảnh và làm vừa ô excel.
    1847
    Các phần khác bạn tự nghiên cứu nhé.

    Em cảm ơn bác! em đã làm được.
    Nếu có thể bác giúp em thêm với ạ.
    1. đối với ô merge thì không sử dụng được ạ
    2. em muốn vừa chỉnh ''vừa ô'' vừa "crop" theo như code dưới đây có áp dụng được không ạ?

    Sub CropAndCenter(ByVal shp As Shape, ByVal cLeft As Double, ByVal cTop As Double, ByVal cRight As Double, ByVal cBottom As Double)
    Dim w As Double, h As Double, khung As Range
        With shp
            Set khung = shp.Parent.Range(.Name)
            .ScaleWidth 1, msoTrue
            .ScaleHeight 1, msoTrue
            With .PictureFormat
                .CropLeft = cLeft
                .CropRight = cRight
                .CropTop = cTop
                .CropBottom = cBottom
            End With
            w = khung.Width
            h = w * .Height / .Width
            If h > khung.Height Then
                h = khung.Height
                w = h * .Width / .Height
            End If
            .Left = khung.Left + (khung.Width - w) / 2
            .Top = khung.Top + (khung.Height - h) / 2
            .Width = w
            .Height = h
        End With
    End Sub

    – Cái dưới này em không biết chèn vô đâu

    With ThisWorkbook.Worksheets("Sheet1")
                On Error Resume Next
                CropAndCenter .Shapes(cell_.Address), .Range("A1").Value, .Range("B1").Value, .Range("C1").Value, .Range("D1").Value
                On Error GoTo 0
            End With

    Cho đồng chí này, nọ mới đào mộ xong. Người vẫn còn thấy lành lạnh nên nay chỉ đường thôi nhé.
    Cách làm khác cách phát lộc phát, có điều đáp ứng được merge và fit trong khi chờ người nơi ấy.
    Link: [URL='www.giaiphapexcel.com/diendan/threads/ch%C3%A8n-h%C3%ACnh-v%C3%A0o-cell-b%E1%BA%B1ng-h%C3%A0m-t%E1%BB%B1-t%E1%BA%A1o.51408/']Hey
    Trước mình test ổn cả rồi, vào đấy làm theo, cấm hỏi nữa nhé. Vì mình cũng chỉ biết đọc, làm theo, và được.

    em cảm ơn bác. Cái em đang cần là chỉnh ảnh chứ không phải chèn ảnh.
    Chèn ảnh hàng loạt vừa ô + crop ảnh em có code lấy của anh Batman1 rồi ạ. bác có cần em chia sẻ tham khảo ạ.

Leave a Reply

Your email address will not be published. Required fields are marked *

Quảng cáo

Cũ vẫn chất

Xem thêm