Trần Văn Huệ
Trần Văn Huệ
Thảo luận 0 thảo luận
Vỗ tay 0 vỗ tay
Lượt xem 7422 lượt xem

Hướng dẫn 2 cách tự động điều chỉnh chiều rộng cột và chiều cao hàng trong Excel

Sep 28 2020

Cách tự động điều chỉnh chiều rộng cột trong Excel

Trong Excel, bạn có thể điều chỉnh độ rộng cột để vừa với nội dung ô một cách nhanh chóng bằng cách sử dụng tính năng Auto Fit Column Width. 

Đôi khi, bạn muốn chiều rộng cột tự động cập nhật dựa trên văn bản dài nhất trong cột đó, nghĩa là khi nhập một chuỗi văn bản dài vào ô, chiều rộng cột sẽ được tự động thay đổi kích thước để phù hợp với chiều dài của nội dung. Điều này có thể giải quyết đơn giản trong Excel

Tự động điều chỉnh chiều rộng cột với mã VBA

Thay vì phải điều chỉnh theo cách thủ công phổ biến, giờ đây bạn có thể sử dụng mã VBA để làm cho chiều rộng cột được cập nhật tự động với chiều dài nội dung ô. Cách thực hiện như sau:

Bước 1: Nhấn tổ hợp phím Alt + F11 hoặc chọn mục Visual Basic trong thẻ Developer để mở cửa sổ Microsoft Visual Basic for Applications.

Bước 2: Kích đúng vào ThisWorkbook trong ngăn Project bên trái để mở một modul trống, rồi sao chép và dán mã VBA bên dưới vào modul trống ở khung bên phải.

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
'Update 20141127
Dim xCol, xoutCol
xCol = Target.Column
If xCol > 52 Then
xoutCol = Chr(Int((xCol - 1) / 52) + 64) & _
Chr(Int((xCol - 27) / 26) + 64) & _
Chr(Int((xCol - 27) Mod 26) + 65)
ElseIf xCol > 26 Then
xoutCol = Chr(Int((xCol - 1) / 26) + 64) & _
Chr(Int((xCol - 1) Mod 26) + 65)
Else
xoutCol = Chr(xCol + 64)
End If
Columns(xoutCol & ":" & xoutCol).AutoFit
End Sub
Hướng dẫn 2 cách tự động điều chỉnh chiều rộng cột trong Excel

Bước 3: Lưu và đóng cửa sổ mã, bây giờ khi bạn nhập văn bản dài vào một ô, chiều rộng cột sẽ tự động điều chỉnh để phù hợp với nội dung.

Tự động điều chỉnh chiều rộng cột với các phím tắt 

Nếu bạn có nhiều cột với một phần nội dung ô bị ẩn như hình ảnh hiển thị dưới đây, bạn muốn thay đổi kích thước chiều rộng cột cùng một lúc để phù hợp với nội dung của chúng. Các phím tắt sau đây có thể giúp bạn.
Hướng dẫn 2 cách tự động điều chỉnh chiều rộng cột trong Excel
Bước 1: Chọn phạm vi dữ liệu mà bạn muốn thay đổi kích thước chiều rộng cột.
Bước 2: Bấm giữ phím Alt và nhấn H + O + I , bây giờ chiều rộng cột của bạn đã được tự động điều chỉnh nội dung của chúng ngay lập tức. 

Hướng dẫn 2 cách tự động điều chỉnh chiều rộng cột trong Excel
Lưu ý: Nếu bạn đang sử dụng Excel 2003 và phiên bản trước đó, bạn cần phải sử dụng các phím tắt: ALT + O + C + A.

Tự động điều chỉnh chiều cao hàng các ô đã hợp nhất trong Excel 


Trong Excel, chúng ta có thể nhanh chóng điều chỉnh chiều cao hàng để vừa với nội dung ô bằng cách sử dụng tính năng AutoFit Row Height, nhưng chức năng này sẽ hoàn toàn bỏ qua các ô đã hợp nhất. 

Có nghĩa là bạn không thể áp dụng tính năng AutoFit Row Height để thay đổi kích thước chiều cao hàng của các ô đã hợp nhất, bạn cần điều chỉnh thủ công chiều cao hàng cho từng ô đã hợp nhất. Trong bài viết này, Gitiho sẽ giới thiệu với các bạn một số phương pháp nhanh chóng để giải quyết vấn đề này.

Tự động điều chỉnh chiều cao hàng các ô đã hợp nhất với mã VBA


Giả sử bạn có một trang tính với một số ô đã hợp nhất như hình bên dưới và giờ bạn cần thay đổi kích thước chiều cao hàng để hiển thị toàn bộ nội dung, mã VBA dưới đây có thể giúp bạn tự động điều chỉnh chiều cao hàng của nhiều ô đã hợp nhất với cách thực hiện như sau:

Hướng dẫn 2 cách tự động điều chỉnh chiều rộng cột trong Excel
Bước 1: Nhấn tổ hợp phím Alt + F11 hoặc chọn mục Visual Basic trong thẻ Developer để mở cửa sổ Microsoft Visual Basic for Applications (VBA).

Bước 2: Trong cửa sổ Microsoft Visual Basic for applications đã mở, truy cập vào menu Insert > Module, rồi sao chép và dán mã VBA bên dưới vào modul trống ở khung bên phải.

Option Explicit
Public Sub AutoFitAll()
  Call AutoFitMergedCells(Range("a1:b2"))
   Call AutoFitMergedCells(Range("c4:d6"))
    Call AutoFitMergedCells(Range("e1:e3"))
End Sub
Public Sub AutoFitMergedCells(oRange As Range)
  Dim tHeight As Integer
  Dim iPtr As Integer
  Dim oldWidth As Single
  Dim oldZZWidth As Single
  Dim newWidth As Single
  Dim newHeight As Single
  With Sheets("Sheet4")
    oldWidth = 0
    For iPtr = 1 To oRange.Columns.Count
      oldWidth = oldWidth + .Cells(1, oRange.Column + iPtr - 1).ColumnWidth
    Next iPtr
    oldWidth = .Cells(1, oRange.Column).ColumnWidth + .Cells(1, oRange.Column + 1).ColumnWidth
    oRange.MergeCells = False
    newWidth = Len(.Cells(oRange.Row, oRange.Column).Value)
    oldZZWidth = .Range("ZZ1").ColumnWidth
    .Range("ZZ1") = Left(.Cells(oRange.Row, oRange.Column).Value, newWidth)
    .Range("ZZ1").WrapText = True
    .Columns("ZZ").ColumnWidth = oldWidth
    .Rows("1").EntireRow.AutoFit
    newHeight = .Rows("1").RowHeight / oRange.Rows.Count
    .Rows(CStr(oRange.Row) & ":" & CStr(oRange.Row + oRange.Rows.Count - 1)).RowHeight = newHeight
    oRange.MergeCells = True
    oRange.WrapText = True
    .Range("ZZ1").ClearContents
    .Range("ZZ1").ColumnWidth = oldZZWidth
  End With
End Sub

Lưu ý:
- Trong đoạn mã trên, bạn có thể thêm các phạm vi mới chỉ cần sao chép tập lệnh Call AutoFitMergedCells(Range("a1:b2")) nhiều lần tùy thích và thay đổi các phạm vi ô đã hợp nhất theo nhu cầu của bạn.
- Bạn nên thay đổi tên trang tính hiện tại Sheet4 thành tên trang tính đã sử dụng của mình.

Hướng dẫn 2 cách tự động điều chỉnh chiều rộng cột trong Excel
Bước 3: Sau đó nhấn phím F5 để chạy mã này và bây giờ, bạn có thể thấy tất cả các ô được hợp nhất đã được tự động điều chỉnh nội dung ô. 

Trên đây Gitiho vừa Hướng dẫn 2 cách tự động điều chỉnh chiều rộng cột và chiều cao hàng trong Excel. Tùy vào nhu cầu sử dụng mà bạn có thể lựa chọn cho mình cách phù hợp nhất. 

CÓ THỂ BẠN CŨNG QUAN TÂM:

Để có thể biết thêm nhiều hàm nâng cao trong Excel cũng như sử dụng tốt hơn các công cụ của Excel, các bạn hãy tham gia ngay khóa học EXG01 – Học Microsoft Excel từ cơ bản tới nâng cao dành cho người đi làm của Gitiho.com. Đây là khóa học chi tiết và đầy đủ nhất, giúp bạn phát triển kiến thức một cách đầy đủ, có hệ thống. Đặc biệt khóa học này không giới hạn thời gian học tập, nên bạn có thể học thoải mái và xem lại bất cứ khi nào.

Cùng tham gia cộng đồng hỏi đáp về chủ đề Tin học văn phòng

Thảo luận 0 câu trả lời
Lượt xem 7422 lượt xem
Vỗ tay vỗ tay

0 Bình luận

@ 2020 - Bản quyền của Công ty cổ phần công nghệ giáo dục Gitiho Việt Nam
Giấy chứng nhận Đăng ký doanh nghiệp số: 0109077145, cấp bởi Sở kế hoạch và đầu tư TP. Hà Nội