Excel'de arama değeriyle birlikte arka plan rengini nasıl arar ve döndürürsünüz?
Aşağıdaki ekran görüntüsünde gösterildiği gibi bir tablonuz olduğunu varsayalım. Şimdi belirli bir değerin A sütununda olup olmadığını kontrol etmek ve ardından C sütununda ilgili değeri arka plan rengiyle birlikte döndürmek istiyorsunuz. Bunu nasıl başarabilirsiniz? Bu makaledeki yöntem size sorunu çözmeye yardımcı olabilir.
Kullanıcı tanımlı işlevle arama yapın ve arka plan rengini arama değeriyle birlikte döndürün
Kullanıcı tanımlı işlevle arama yapın ve arka plan rengini arama değeriyle birlikte döndürün
Bir değeri aramak ve Excel'de ilgili değeri arka plan rengiyle birlikte döndürmek için lütfen aşağıdaki adımları izleyin.
1. Arama yapmak istediğiniz değeri içeren çalışma sayfasında, sayfa sekmesine sağ tıklayın ve açılır menüden Kodu Görüntüle'yi seçin. Ekran görüntüsüne bakın:
2. Açılan Microsoft Visual Basic for Applications penceresinde lütfen aşağıdaki VBA kodunu Kod penceresine kopyalayın.
VBA kodu 1: Arama değeriyle arka plan rengini arayın ve döndürün
Sub Worksheet_Change(ByVal Target As Range)
Dim I As Long
Dim xKeys As Long
Dim xDicStr As String
On Error Resume Next
Application.ScreenUpdating = False
xKeys = UBound(xDic.Keys)
If xKeys >= 0 Then
For I = 0 To UBound(xDic.Keys)
xDicStr = xDic.Items(I)
If xDicStr <> "" Then
Range(xDic.Keys(I)).Interior.Color = _
Range(xDic.Items(I)).Interior.Color
Else
Range(xDic.Keys(I)).Interior.Color = xlNone
End If
Next
Set xDic = Nothing
End If
Application.ScreenUpdating = True
End Sub
3. Ardından Ekle > Modül'e tıklayın ve aşağıdaki VBA kodu 2'yi Modül penceresine kopyalayın.
VBA kodu 2: Arama değeriyle arka plan rengini arayın ve döndürün
Public xDic As New Dictionary
Function LookupKeepColor (ByRef FndValue, ByRef LookupRng As Range, ByRef xCol As Long)
Dim xFindCell As Range
On Error Resume Next
Set xFindCell = LookupRng.Find(FndValue, , xlValues, xlWhole)
If xFindCell Is Nothing Then
LookupKeepColor = ""
xDic.Add Application.Caller.Address, ""
Else
LookupKeepColor = xFindCell.Offset(0, xCol - 1).Value
xDic.Add Application.Caller.Address, xFindCell.Offset(0, xCol - 1).Address
End If
End Function
4. İki kodu da ekledikten sonra Araçlar > Referanslar'a tıklayın. Ardından Referanslar – VBAProject iletişim kutusunda Microsoft Script Runtime kutusunu işaretleyin. Ekran görüntüsüne bakın:
5. Microsoft Visual Basic for Applications penceresini kapatmak ve çalışma sayfasına geri dönmek için Alt + Q tuşlarına basın.
6. Arama değerine bitişik boş bir hücre seçin ve ardından =LookupKeepColor(E2,$A$1:$C$8,3) formülünü Formül Çubuğu'na girin ve Enter tuşuna basın.
Not: Formülde, E2 aranacak değeri içerir, $A$1:$C$8 tablo aralığıdır ve 3 sayısı, döndürülecek ilgili değerin tablonun üçüncü sütununda yer aldığını gösterir. Lütfen bunları ihtiyaçlarınıza göre değiştirin.
7. İlk sonuç hücresinin seçili kalmasını sağlayın ve tüm sonuçları arka plan renkleriyle birlikte almak için Doldurma Tutamacını aşağı sürükleyin. Ekran görüntüsüne bakın.
İlgili makaleler:
- Excel'de Vlookup kullanırken arama hücresinin kaynak biçimlendirmesini nasıl kopyalarsınız?
- Excel'de sayı yerine tarih formatını arama ve döndürme nasıl yapılır?
- Excel'de Vlookup ve Toplamayı nasıl kullanırsınız?
- Excel'de bitişik veya bir sonraki hücrede arama değeri nasıl döndürülür?
- Excel'de Vlookup ile değer araması yapıp doğru/yanlış veya evet/hayır döndürme nasıl yapılır?
En İyi Ofis Verimlilik Araçları
Kutools for Excel ile Excel becerilerinizi geliştirin ve daha önce hiç olmadığı kadar verimli olun. Kutools for Excel, üretkenliğinizi artırmak ve zamanınızı kaydetmek için300'den fazla gelişmiş özellik sunar. En çok ihtiyacınız olan özelliği almak için buraya tıklayın...
Office Tab, Office'e sekmeli arayüz getirir ve işinizi çok daha kolaylaştırır
- Word, Excel, PowerPoint'te sekmeli düzenleme ve okuma özelliğini etkinleştirin.
- Aynı pencerenin yeni sekmelerinde birden fazla belge açın ve oluşturun, yeni pencerelerde değil.
- Verimliliğinizi %50 artırır ve her gün yüzlerce fare tıklamasını azaltır!