Cần giúp đỡ về phần dãn dòng khi Merge dòng! (2 người xem)

Liên hệ QC

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

vova2209

Thành viên tích cực
Tham gia
5/4/17
Bài viết
835
Được thích
112
Giới tính
Nam
Nghề nghiệp
Đường bộ
Có vài bài nói về tự động điều chỉnh dòng nhưng không đúng như ý em muốn thực hiện nên nhờ các bác giúp đỡ:
khi "Wrap Text" ở 1 ô khi chữ dài ra sẽ tự dãn dòng, ít thì sẽ co lại vừa dòng. Nhưng khi Merge nhiều ô thì "Wrap Text" lại không không tự động co dãn dòng. Nhờ các bác viết cho 1 code tự động chạy co dãn dòng khi vùng link vlookup đó thay đổi, chiều rộng khi co dòng tối thiểu là 18..
File đính kèm dưới:
Em xin chân thành cảm ơn!
 

File đính kèm

Lần chỉnh sửa cuối:
Tôi ấn tượng với file của bạn quá. Cảm ơn bạn đã chia sẻ.
Cho tôi hỏi 1 số vấn đề là:
1. file này bạn làm trên office bao nhiêu nhỉ. Tôi dùng office 2010. Lúc mở ra nó báo lỗi. Tuy nhiên vẫn mở ra và xem được
2. Đây có phải là bản chưa đầy đủ hay sao mà khi KÍCH vào 1 số tiện ích như mục: Xuất biên bản ra Pdf, Ghi nhật ký thi công, Xuất nhật ký ra Pdf. Lúc đó lại hiện thông báo: Chua co code cho muc nay
Mong nhận được sự giúp đỡ. Xin chân thành cảm ơn !
Đây là bản chưa hoàn thiện. Do độ lười dạo này hơn cao nên chưa hoàn thiện được bạn ah. Mình đang dùng ofice2016 (mà nó báo lỗi sao vậy bạn. Mình chưa Test ở máy khác nữa)
 
Upvote 0
Tôi ấn tượng với file của bạn quá. Cảm ơn bạn đã chia sẻ.
Cho tôi hỏi 1 số vấn đề là:
1. file này bạn làm trên office bao nhiêu nhỉ. Tôi dùng office 2010. Lúc mở ra nó báo lỗi. Tuy nhiên vẫn mở ra và xem được
2. Đây có phải là bản chưa đầy đủ hay sao mà khi KÍCH vào 1 số tiện ích như mục: Xuất biên bản ra Pdf, Ghi nhật ký thi công, Xuất nhật ký ra Pdf. Lúc đó lại hiện thông báo: Chua co code cho muc nay
Mong nhận được sự giúp đỡ. Xin chân thành cảm ơn !
ấn alt+f8, hoặc ad code vào 1 hình ảnh nào đấy dùng!
 
Upvote 0
Mã:
Sub FixRow(ByVal Rng As Range)
    Dim Ws As Worksheet
    Dim row As Range, cell As Range, MrgeWdth As Single
    Dim WithCellPaste As Long, ColPaste As Long, RowPaste As Long, CellPaste As Range, Diff As Single
    On Error Resume Next
    Diff = 0.75
    Set Ws = Rng.Worksheet
    ColPaste = Ws.UsedRange.Columns.Count + 1
    For Each row In Rng
        Set ma = row.MergeArea
        For Each cell In ma
            MrgeWdth = MrgeWdth + cell.ColumnWidth + Diff
        Next cell
        ma.RowHeight = 16.5
        RowPaste = ma.row
        Set CellPaste = Cells(RowPaste, ColPaste)
        WithCellPaste = CellPaste.ColumnWidth
        CellPaste.ColumnWidth = MrgeWdth
        CellPaste = ma.Value
        CellPaste.Font.Size = ma.Font.Size
        If ma.Font.Bold = True Then CellPaste.Font.Bold = True
        If ma.Font.Italic = True Then CellPaste.Font.Italic = True
        If ma.Font.Underline = xlUnderlineStyleSingle Then CellPaste.Font.Underline = xlUnderlineStyleSingle
        CellPaste.WrapText = True
        CellPaste.EntireRow.AutoFit
        ma.RowHeight = CellPaste.RowHeight + 16.5 / 5
        CellPaste.Clear
        CellPaste.ColumnWidth = WithCellPaste
    Next row
End Sub
Anh ơi! code chạy ngon rồi ạ!
vùng giữ liệu có lấy được tự đông những dòng Merge không anh?
 
Lần chỉnh sửa cuối:
Upvote 0
Anh ơi! code chạy ngon rồi ạ!
vùng giữ liệu có lấy được tự đông những dòng Merge không anh?
Chắc là do mấy cái dòng này
Mã:
Application.ScreenUpdating
    Application.Calculation
    Application.DisplayAlerts
    Application.EnableEvents
bạn bỏ nó đi. Xuất tự động thì cứ để cho nó làm Tắt mở làm chi
 
Upvote 0
Đây là bản chưa hoàn thiện. Do độ lười dạo này hơn cao nên chưa hoàn thiện được bạn ah. Mình đang dùng ofice2016 (mà nó báo lỗi sao vậy bạn. Mình chưa Test ở máy khác nữa)
Excel nó báo. không thể đọc được file này. Chắc là do phiên bản office của tôi cũ hơn thôi.
Hóng ! được xem bản hoàn thiện của PacificPR
Chúc sức khỏe để hoàn thiện nhé ./.
 
Upvote 0
Chắc là do mấy cái dòng này
Mã:
Application.ScreenUpdating
    Application.Calculation
    Application.DisplayAlerts
    Application.EnableEvents
bạn bỏ nó đi. Xuất tự động thì cứ để cho nó làm Tắt mở làm chi
đúng rồi anh à! em bỏ đi chạy ngon rồi, cảm ơn anh ạ
 
Upvote 0
Web KT

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

Back
Top Bottom