Chức năng Zoom in và Zoom out trong bảng tính Excel

Liên hệ QC

huyen891977

Thành viên chính thức
Tham gia
15/11/08
Bài viết
87
Được thích
16
Nghề nghiệp
nojob
Chào các bạn, không biết vấn đề này có đề cập trên diễn đàn chưa, nhưng bản thân mình thấy nó cũng hay hay đối với một số trường hợp nào đó cho người sử dụng, nên mình post file lên nhờ các cao thủ phát triển chức năng này để mình học hỏi thêm và sử dụng cho nhu cầu nhé. Thân chào
 
Lần chỉnh sửa cuối:
Chào các bạn, không biết vấn đề này có đề cập trên diễn đàn chưa, nhưng bản thân mình thấy nó cũng hay hay đối với một số trường hợp nào đó cho người sử dụng, nên mình post file lên nhờ các cao thủ phát triển chức năng này để mình học hỏi thêm và sử dụng cho nhu cầu nhé. Thân chào
Vấn đề này cũng có nói vài lần trên diển đàn rồi
Code của bạn là:
PHP:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  Dim lZoom As Long
  Dim lZoomDV As Long
  Dim lDVType As Long
  lZoom = 100
  lZoomDV = 140
  lDVType = 0

  Application.EnableEvents = False
  On Error Resume Next
  lDVType = Target.Validation.Type
  
    On Error GoTo errHandler
    If lDVType <> 3 Then
      With ActiveWindow
        If .Zoom <> lZoom Then
          .Zoom = lZoom
        End If
      End With
    Else
      With ActiveWindow
        If .Zoom <> lZoomDV Then
          .Zoom = lZoomDV
        End If
      End With
    End If

exitHandler:
  Application.EnableEvents = True
  Exit Sub
errHandler:
  GoTo exitHandler
End Sub
Có vài chổ tôi cũng chưa hiểu lắm (vì nó vượt quá khả năng của tôi) ---> Nhưng nếu là tôi làm món này thì tôi sẽ:
PHP:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  Dim ValSel As Boolean
  ValSel = Not Intersect(Cells.SpecialCells(15), Target) Is Nothing
  Application.ScreenUpdating = False
  ActiveWindow.Zoom = 100 - 40 * ValSel
End Sub
Cũng có thể là dở hơn, nhưng mà nó vừa tầm hiểu biết của tôi
Ẹc... Ẹc...
 
Thêm 1 cách nữa đây:
PHP:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  On Error GoTo SD
  With ActiveWindow
    .Zoom = 100 - 40 * (Target.Validation.Type = 3): Exit Sub
SD: .Zoom = 100
  End With
End Sub
Cách này xem ra còn đơn giản và dể hiểu hơn thì phải
 

File đính kèm

  • Validation_Zoom.xls
    20.5 KB · Đọc: 31
Web KT
Back
Top Bottom