Cách giữ văn bản được chọn được tô sáng khi thay đổi tiêu điểm trong Microsoft Word / Excel


49

Liên quan đến câu hỏi này: Hiển thị lựa chọn ô trong Excel khi không tập trung ngoại trừ trường hợp của tôi liên quan đến Microsoft Word.

Khi tôi chọn văn bản hoặc một cột / hàng trong Microsoft Word hoặc Excel (2003, 2007, 2010 hoặc 2013), nó sẽ hiển thị nổi bật như thế này trong Word:

nhập mô tả hình ảnh ở đây

và Excel:

nhập mô tả hình ảnh ở đây

Tuy nhiên, khi tôi thay đổi tiêu điểm sang chương trình khác, văn bản được tô sáng không còn được tô sáng.

Tôi thường làm việc với 2 màn hình, trong đó một màn hình chứa tài liệu / bảng tính chứa dữ liệu tôi cần đọc và màn hình kia là nơi tôi đang thực sự làm việc. Tôi sẽ chọn một số văn bản (hoặc ô) để làm cho nó nổi bật giữa nhiều trang dữ liệu và sau đó chuyển đổi chương trình, nhưng văn bản được tô sáng không còn hiển thị nữa.

Có một giải pháp lâu dài cho vấn đề này?


@CGTheLegend: Các giải pháp thay thế được cung cấp chi phí hoặc là các macro tạm thời mà AFAIK không hoạt động trên nhiều tệp.
glenneroo

Câu trả lời:


23

Một cách nhanh chóng để khắc phục một nửa vấn đề của bạn (khi chuyển từ Excel sang Word) là sao chép văn bản. Khi bạn nhấn Ctrl + c, các ô sẽ tiếp tục được đánh dấu (highligthing đã biến mất, nhưng bạn vẫn có một đường chấm chấm xung quanh văn bản).

Một nhược điểm của điều này là văn bản chỉ được đánh dấu, miễn là bạn giữ các ô được sao chép. Có nghĩa là bạn không thể sao chép bất cứ điều gì khác hoặc đánh dấu đã biến mất. Thật không may, điều này sẽ không hoạt động từ Word đến Excel.


14

Đây dường như là một "tính năng" độc quyền của Microsoft. Đối với hầu hết các dự án, tôi chỉ cần truy cập chỉ đọc và định dạng không thành vấn đề trong trường hợp của tôi, do đó tôi đã chuyển sang OpenOffice không thể hiện hành vi này.


3
Tôi không nghĩ câu trả lời này xứng đáng với giải pháp tốt nhất. Chỉ cần sử dụng một ứng dụng khác không hẳn là giải pháp tốt nhất cho mọi người.
CGTheLegend

Tôi thích giải pháp này vì MS đã không loại bỏ lỗi này từ 100 năm
Hartmut P.

Cá nhân tôi đã trải nghiệm LibreScript để tương thích hơn.
Damian Vogel

6

không có giải pháp lâu dài cho vấn đề này

một cách giải quyết (có thể gây khó chịu trong một thời gian) sẽ là thay đổi phần tô sáng của các ô đã chọn trong khi chúng được chọn và chọn lại chúng một lần nữa để thả màu.

Dán mã này vào mã Sheet1 phía sau và chuyển đến bảng tính của bạn và chọn một số ô, chọn các ô khác sau đó chọn lại các ô đầu tiên để thả màu

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim cell As Range

    For Each cell In Target.Cells
        If cell.Interior.Color = RGB(60, 150, 230) Then
            cell.Interior.Pattern = xlNone
        Else
            cell.Interior.Color = RGB(60, 150, 230)
        End If
    Next
End Sub

@DaveRook ý tưởng thay đổi màu nền trên sự kiện SelectionChange hoặc Activate sẽ hoạt động cho cả Excel và Word.

6

VBa này sẽ làm điều đó nhưng nó giả sử bạn KHÔNG sử dụng highlites. Nếu là bạn, việc tô sáng của bạn sẽ bị rối, vì vậy đừng sử dụng nó.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    ActiveCell.Worksheet.Cells.Interior.ColorIndex = xlNone
    ActiveCell.EntireRow.Interior.ColorIndex = 19
End Sub

Làm cách nào để thêm VBA trong MS Office?


Là một công việc khổng lồ (nếu phần tô sáng không phù hợp với bạn), bạn có thể sử dụng một cái gì đó như JRuler (hãy nghe tôi nói :) !! ) vì điều này sẽ cho phép bạn để thước kẻ trên màn hình với hàng được hỏi phía trên nó để khi mắt bạn quay lại màn hình đó bạn có thể thấy bạn đang ở đâu (vì vậy bạn có thể thấy, tôi bị mất điểm nhấn nhưng ít nhất tôi có thể nhìn thấy tôi đã nhìn vào hàng 3)!

Đừng hiểu sai ý tôi, điều này rất tốn công và đau đớn nếu bạn làm điều này rất nhiều, nhưng, nó có thể đủ cho bất kỳ chương trình nào (Word và Excel).

nhập mô tả hình ảnh ở đây


4

Sau mười năm, vấn đề này đã thúc đẩy tôi và cuối cùng tôi cũng tìm được một giải pháp phù hợp với mình. Thật không may, nó không miễn phí ... Trình quản lý cửa sổ thực tếcó một tính năng gọi là "Bỏ qua việc hủy kích hoạt" có thể được bật cho các ứng dụng cụ thể. Điều này làm cho cửa sổ nghĩ rằng nó vẫn tập trung ngay cả khi không. Tôi đã bật tính năng này cho tất cả các ứng dụng văn phòng và bây giờ tôi vẫn có thể thấy lựa chọn được tô sáng ngay cả khi một cửa sổ khác có tiêu điểm. Tôi cũng không có tác dụng phụ tiêu cực. Tôi cũng sử dụng nhiều màn hình và chương trình này có rất nhiều công cụ hữu ích khác để làm việc với nhiều màn hình cũng khiến nó đáng giá đối với tôi. Tôi đã cài đặt bản dùng thử và sau đó gỡ cài đặt nó và nó giảm giá 30% cho tôi. Có thể có một chương trình miễn phí thực hiện điều này nhưng tôi không thể tìm thấy ... Tôi hy vọng điều này sẽ giúp được ai đó nhiều như nó đã giúp tôi!


Thật không may, phương pháp này không hoạt động cho Word 2010 và Windows 7
Eugene Mala

2

Tôi đã vật lộn với vấn đề tương tự trong một thời gian dài. Tôi cũng bị lạc trong các tệp Excel dày đặc khi sử dụng nhiều màn hình.

Có một bộ sưu tập lớn các plugin Excel có sẵn trên internet. Tôi phát hiện ra rằng tiện ích mở rộng Kutools Excel (phiên bản miễn phí) có kiểu tóc chéo bật / tắt một lần nhấp mà vẫn hiển thị ngay cả khi Excel không được lấy nét. Kutools dường như cũng có rất nhiều tính năng bổ sung, nhưng chắc chắn đó không phải là lựa chọn duy nhất có sẵn.

Dưới đây là ảnh chụp màn hình của Kutools làm nổi bật tóc chéo:

Ảnh chụp màn hình của Kutools làm nổi bật mái tóc chéo trong hành động

Tôi biết một số người sợ các plugin hoặc công cụ của bên thứ 3, nhưng sử dụng chúng có lẽ là lựa chọn nhanh nhất và dễ nhất.


0

Chèn một hộp văn bản kéo dài chiều dài của các ô. Nhập một hàng ****** ký tự tương tự để điền vào hộp văn bản. Bạn có thể di chuyển hộp văn bản xuống trang như một thước kẻ hoặc mảnh giấy trên một bản sao cứng. Xóa khi hoàn tất.


0

Một giải pháp đơn giản đặt màu ô khi lựa chọn thay đổi

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Selection.Interior.ColorIndex = xlColorIndexNone
    Selection.Interior.Color = RGB(204, 204, 204)
End Sub


Giải pháp phức tạp chỉ thay đổi màu ô khi mất tiêu điểm

Trong một mô-đun tiêu chuẩn:

Option Explicit    
Public s As Range

Trong (các) trang tính bạn muốn nó hoạt động trong:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Set s = Selection
End Sub

Trong ThisWorkbook:

Private Sub Workbook_Deactivate()
    If s Is Nothing Then
        Set s = Selection
        Exit Sub
    End If
    s.Interior.ColorIndex = xlColorIndexNone
    s.Interior.Color = RGB(204, 204, 204)

    ' This is optional formatting to make the cells look more like they're actually selected
    s.Borders.Color = RGB(130, 130, 130)
    s.BorderAround _
    Color:=RGB(30, 130, 37), Weight:=xlThick
End Sub

Private Sub Workbook_Activate()
    If s Is Nothing Then
        Set s = Selection
        Exit Sub
    End If
    s.Interior.ColorIndex = xlColorIndexNone
    s.Borders.ColorIndex = xlColorIndexNone
End Sub


Trích dẫn: Giải pháp đơn giản dựa trên câu trả lời của @Dave ; Giải pháp phức tạp đã được tập hợp từ nhiều nguồn, đặc biệt là với sự giúp đỡ của @JohnColeman trong bài đăng này .


0

Một cách rất đơn giản để làm điều này là với định dạng có điều kiện và VBA.

Chỉ cần thêm mã này vào mã ThisWorkbook của bạn:

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
    If Application.CutCopyMode = False Then
        Application.Calculate
    End If
End Sub

và chỉ chạy mã sau một lần , để tạo quy tắc định dạng có điều kiện:

Sub CreateConditionalFormats()
  Dim y As FormatCondition
    For Each ws In ThisWorkbook.Worksheets
        DoEvents

        'Optionally delete any existing conditional formats
        'ws.Cells.FormatConditions.Delete

        ' Selection highlight
        Set y = ws.Cells.FormatConditions.Add(Type:=xlExpression, Formula1:="=AND(ROW()=CELL(""row""), COLUMN()=CELL(""col""))")
        With y.Borders(xlTop)
            .LineStyle = xlSolid
            .Color = -16776961
            .TintAndShade = 0
            .Weight = xlThin
        End With
        With y.Borders(xlBottom)
            .LineStyle = xlSolid
            .Color = -16776961
            .TintAndShade = 0
            .Weight = xlThin
        End With
        With y.Borders(xlLeft)
            .LineStyle = xlSolid
            .Color = -16776961
            .TintAndShade = 0
            .Weight = xlThin
        End With
        With y.Borders(xlRight)
            .LineStyle = xlSolid
            .Color = -16776961
            .TintAndShade = 0
            .Weight = xlThin
        End With
        y.StopIfTrue = False
        y.SetFirstPriority

        ' Row highlight
        Set y = ws.Cells.FormatConditions.Add(Type:=xlExpression, Formula1:="=ROW()=CELL(""row"")")
        With y.Borders(xlTop)
            .LineStyle = xlDash
            .Color = -16776961
            .TintAndShade = 0
            .Weight = xlThin
        End With
        With y.Borders(xlBottom)
            .LineStyle = xlDash
            .Color = -16776961
            .TintAndShade = 0
            .Weight = xlThin
        End With
        y.StopIfTrue = False

        ' Column highlight
        Set y = ws.Cells.FormatConditions.Add(Type:=xlExpression, Formula1:="=COLUMN()=CELL(""col"")")
        With y.Borders(xlLeft)
            .LineStyle = xlDash
            .Color = -16776961
            .TintAndShade = 0
            .Weight = xlThin
        End With
        With y.Borders(xlRight)
            .LineStyle = xlDash
            .Color = -16776961
            .TintAndShade = 0
            .Weight = xlThin
        End With
        y.StopIfTrue = False
    Next
End Sub

0

Sử dụng hình dạng chèn / hình chữ nhật là một cách giải quyết đơn giản. Chọn tùy chọn "Không điền" và thậm chí bạn có thể chỉnh sửa các ô thông qua nó.

Hãy nhìn vào bức tranh ở đây:

Hãy nhìn vào bức tranh ở đây

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.