Odak Microsoft Word / Excel'de değiştiğinde seçili metni vurgulama


49

Bu soru ile ilgili: Durumumun Microsoft Word ile ilgili olması dışında, odağın odaklanmadığı zamanlarda Excel'de hücre seçimini göster .

Microsoft Word veya Excel'de metin veya sütun / satır seçtiğimde (2003, 2007, 2010 veya 2013), Word'de şöyle vurgulanmış olarak görünüyor:

görüntü tanımını buraya girin

ve Excel:

görüntü tanımını buraya girin

Ancak, odağı başka bir programla değiştirdiğimde, vurgulanan metin artık vurgulanmamaktadır.

Genelde 2 monitörle çalışıyorum, burada bir monitör okumam gereken verileri içeren bir belge / elektronik tablo içeriyor ve diğer monitör gerçekte iş yaptığım yer. Birçok veri sayfasında öne çıkmasını sağlamak için bazı metinleri (veya hücreleri) seçeceğim ve ardından programları değiştireceğim, ancak vurgulanan metinler artık görünmüyor.

Bu soruna kalıcı bir çözüm var mı?


@CGTheLegend: Sunulan alternatif çözümler düşük maliyetlidir veya AFAIK'in birden fazla dosyada çalışmadığı geçici makrolardır.
glenneroo

Yanıtlar:


23

Sorunun yarısını düzeltmenin hızlı bir yolu (Excel'den Word'e geçiş yaparken) metni kopyalamaktır. Ctrl + c tuşlarına bastığınızda, hücreler işaretlenmeye devam eder (yüksek sonuç gitmiştir, ancak yine de metnin etrafında noktalı bir çizgi vardır).

Bunun bir dezavantajı, metnin yalnızca hücreleri kopyaladığınız sürece işaretli olmasıdır. Yani başka bir şeyi kopyalayamazsınız ya da işaret bitti. Ne yazık ki bu, Word'den Excel'e çalışmaz.


14

Bu, özel bir Microsoft "özelliği" gibi görünüyor. Çoğu projede sadece salt okunur erişime ihtiyacım var ve biçimlendirme benim durumum için önemli değil, bu yüzden bu davranışı sergilemeyen OpenOffice'e geçtim.


3
Bu cevabın en iyi çözümü hak ettiğini sanmıyorum. Sadece farklı bir uygulama kullanmak herkes için en iyi çözüm değildir.
CGTheLegend

MS bu sorunu 100 yıldan beri kaldırmadığı için bu çözümü seviyorum
Hartmut P.

Şahsen ben daha uyumlu olması için LibreOffice yaşadım .
Damian Vogel

6

Bu sorunun kalıcı bir çözümü yoktur .

bir geçici çözüm (bir süre sinir bozucu olabilir) seçildiklerinde seçili hücrelerin vurgulanmasını değiştirmek ve rengi düşürmek için tekrar seçmektir.

Bu kodu Sayfa1 kodunun arkasına yapıştırın ve elektronik tablonuza gidin ve bazı hücreleri seçin, diğerlerini seçin, sonra rengi düşüren ilkleri yeniden seçin

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

@DaveRaksiyon Seçiminde veya Activate olayında arka plan rengini değiştirme fikrini hem Excel hem de Word için çalışması gerekir.

6

Bu VBa bunu yapacak ancak highliting kullanmadığınız varsayılmaktadır. Öyleyse, vurgulama işiniz berbatlaşır, bu yüzden kullanmayın.

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

VBA'yı MS Office'e nasıl eklerim?


Etrafında büyük bir çalışma (vurgulama sizin için işe yaramazsa), JRuler gibi bir şey kullanabilirsiniz (beni dinle :) !! Bu, cetvel üzerinde yukarıdaki satırla birlikte ekranda bırakmanıza izin verecek, böylece gözleriniz o ekrana döndüğünde, nerede olduğunuzu görebilirsiniz (böylece görebilirsiniz, vurgulamamı kaybettim ama en azından görebiliyorum satır 3'te bakıyordu)!

Beni yanlış anlamayın, bu çok zahmetli ve çok acı çekiyorsanız, ancak herhangi bir program için yeterli olabilir (Word ve Excel).

görüntü tanımını buraya girin


4

Bu sorundan on yıl sonra beni de delirtiyordum, sonunda benim için işe yarayan bir çözüm buldum. Ne yazık ki ücretsiz değil ... Gerçek Pencere YöneticisiBelirli uygulamalar için etkinleştirilebilen "Devre dışı bırakmayı yoksay" adlı bir özelliğe sahiptir. Bu, pencerenin hala olmadığı zamanlarda bile odaklandığını düşünmesini sağlar. Bunu tüm ofis uygulamaları için açtım ve şimdi vurgulanan seçimi başka bir pencereye odaklandığında bile görebiliyorum. Ben de herhangi bir olumsuz yan etkisi olmadı. Aynı zamanda birden fazla monitör kullanıyorum ve bu program birden fazla monitörle çalışmak için benim için değerli kılan başka bir çok kullanışlı araca sahip. Deneme sürümünü kurdum ve daha sonra kaldırdım ve bana% 30 indirim teklif etti. Bunu yapan ücretsiz bir program olabilir ama bir tane bulamadım ... Umarım bu bana yardım ettiği kadar çok yardımcı olur!


Ne yazık ki bu yöntem Word 2010 ve Windows 7 için işe yaramıyor
Eugene Mala

2

Aynı konuyla uzun zamandır mücadele ediyordum. Çok sayıda ekran kullanırken yoğun Excel dosyalarında da kayboluyorum.

İnternette geniş bir Excel eklentisi koleksiyonu var. Kutools Excel uzantısının (ücretsiz sürüm), tek bir tıklatmamaya rağmen, Excel'in odaklanmamış olmasına rağmen görünür durumda olan açık saçan vurgulama işaretine sahip olduğunu gördüm. Kutools ayrıca birçok ek özelliğe sahip görünüyor, ancak kesinlikle mevcut olan tek seçenek değil.

İşte Kutools'un işaretli karışıma ait bir ekran görüntüsü:

Kutools'un ekran görüntüsü, çalışmadaki artı işaretiyle vurgulanıyor

Bazılarının 3. parti eklentilerinden veya araçlarından korktuğunu biliyorum, ancak bunları kullanmak muhtemelen en hızlı ve en kolay seçenek.


0

Hücrelerin uzunluğunu uzatan bir metin kutusu yerleştirin. Metin kutusunu doldurmak için bir satır ******* benzer karakter yazın. Metin kutusunu, basılı kopyadaki cetvel veya kağıt parçası gibi sayfanın altına taşıyabilirsiniz. Tamamlandığında sil.


0

Seçim değiştiğinde hücre rengini yerleştiren basit bir çözüm

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


Yalnızca odak kaybolduğunda hücre rengini değiştiren bir Karmaşık Çözüm

Standart bir modülde:

Option Explicit    
Public s As Range

Sayfalarda çalışmasını istediğiniz sayfalarda:

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

İçinde 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


Alıntılar: basit bir çözüm off dayanır bir cevap ile @Dave ; Karmaşık çözüm özellikle yardımıyla, birçok kaynaktan araya getirildi @JohnColeman içinde bu yazı .


0

Bunu yapmanın çok basit bir yolu koşullu biçimlendirme ve VBA ile.

Bunu ThisWorkbook kodunuza ekleyin:

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

ve koşullu format kurallarını oluşturmak için aşağıdaki kodu yalnızca bir kez çalıştırı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

İnsert şeklini / dikdörtgeni kullanmak basit bir çözümdür. "Doldurma Yok" seçeneğini işaretleyin, hatta hücreleri bunun içinden düzenleyebilirsiniz.

Buradaki resme bir bakın:

Buradaki resme bir bak

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.