Lỗi thuộc tính EntireRow.AutoFit và Print Preview hiển thị không đúng (1 người xem)

Liên hệ QC

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

khongnhienttt

Thành viên hoạt động
Tham gia
15/7/15
Bài viết
137
Được thích
33
như trong file đính kèm, mình đang bị lỗi tại ô B15 của sheet2, vì ô đó dữ liệu là địa chỉ nên không cố định có thể thể khi địa chỉ dài thì tự động mở rộng ô ra, mình dùng code sau:
Mã:
Private Sub Worksheet_Calculate()
Rows(15).EntireRow.AutoFit
End Sub
tuy nhiên có 1 số trường hợp, hàng chưa đủ dài thì nó lại xuống dòng, ví dụ các bạn gõ số 2 vô ô I1 của sheets("Tinhhuong")
câu hỏi thứ 2: là khi gõ số 1 vào ô I1 của sheets("TinhHuong"), dữ liệu ra đúng theo yêu cầu nhưng khi print preview lên thì nó lại không giống như trên sheet, cụ thể như trong hình, vì diễn đàn không cho up file quá 1M nên mình up qua dropbox, mong các bạn và các anh chị giúp đỡ
https://www.dropbox.com/s/q1aq1s19bjrrgrp/autofit.xls?dl=0
1.jpg2.jpg3.jpg4.jpg5.jpg
 
Cám ơn bạn đã trả lời bài của mình, tuy nhiên
--> Bạn kéo cột X rộng ra 1 tí ti sẽ hết bị ngay,........
--> cái này mình đã căn chỉnh lề lối rồi, kéo ra nó bị lệch, thứ 2 nữa nếu gặp chữ dài hơn tí nữa mà chưa đủ dài thì nó vẫn bị như vậy

--> Bạn xóa 2 cell Z14 + Z15 đi là View kiểu gì cũng ra đúng

--> cái này làm mình không hiểu đây này, nếu xóa Z15 thì cái autofix ở trên không hoạt động, và mình cũng đã thứ xóa thì hàng nó không mở rộng ra, thì làm sao autofix
 
Upvote 0
mình đã làm như bạn và mất hết định dạng ban đầu, vì đây là văn bản nên nó bắt buộc phải canh đều cả cột trái và phải bạn à, cám ơn bạn viết code hộ mình nhưng 2 hiện tượng trên vẫn chưa giải quyết được bạn à
 
Upvote 0
Sao bạn cứ bảo thủ thế nhỉ??? Vấn đề của bạn không phải là lỗi..........gì cả. mà do bạn mà thôi,

Tôi đã nói là bạn phải kéo rộng cột Z ở Sheet2 của bạn rộng ra thỏa mái (dài nhất hơn 1 dòng địa chỉ có số từ dài nhất, để excel hiểu rằng không bị tràn, hoặc vừa khít khi nhìn thấy..........thì chưa chắc lúc Review nó không bị tràn dòng.) Tóm lại: kéo nó rộng ra nhiều hơn nữa........rộng thỏa mái!

=> Kéo cột Z chứ có phải kéo cột X đâu mà sợ làm thay đổi format vùng in của bạn................:=\+

Còn bạn nói mất hết định dạng ban đầu, thì giờ bạn dùng lại code này. ..........Nếu mà bạn nói không được nữa thì tôi cũng chạy............vì tôi bó tay với bạn rồi!!!!

Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
Application.EnableEvents = False
If Target.Address = "$I$1" Then
    With Sheet2.Range("B15:X15")
        .MergeCells = True
        .HorizontalAlignment = xlLeft
        .VerticalAlignment = xlCenter
        .WrapText = True
        .EntireRow.AutoFit
    End With
    With Sheet2.PageSetup
        .PrintArea = "$B$1:$X$31"
        .PaperSize = xlPaperA4
        .FitToPagesWide = 1
        .FitToPagesTall = False
    End With
        Sheet2.PrintPreview
End If
Application.ScreenUpdating = True
Application.EnableEvents = True
End Sub
cám ơn bạn nhiều quá, đúng là lúc trước mình hiểu lầm ý bạn, cột z nằm bên ngoài mà mình tưởng nằm ở trong, cám ơn bạn đã nhiệt tình giải thích, đúng là kéo cột z dài ra thì nó fix theo ý mình
 
Upvote 0

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

Back
Top Bottom