Sütunda arama işlemi

Katılım
14 Aralık 2016
Mesajlar
100
Excel Vers. ve Dili
2010 VB
Altın Üyelik Bitiş Tarihi
11-11-2020
merhaba, ben bir sütunda bir değeri aratmak istiyorum ve var yada yok değerinin dönmesini istiyorum nasıl yapabiliriz ?
öerneğin f sutununda "gökhan" değeri varsa var yoksa yok değerini almam lazım.
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,165
Excel Vers. ve Dili
2019 Türkçe
Merhaba.

Kod:
Sub Ara()
    Dim Adres As String
    Dim Aranan As String
    Aranan = Range("A1")
    On Error GoTo Yok
    Adres = Columns("F:F").Find(What:=Aranan, After:=Range("F1"), LookAt:=xlPart).Address
    MsgBox "Aradığınız değer '" & Adres & "' hücresinde bulundu."
    Exit Sub
Yok:
    MsgBox "Aradığınız değer bulunamadı."
End Sub
Hücre tam eşleşsin istiyorsanız LookAt:=xlWhole yazın
Hücrenin bir kısmı eşleşsin istiyorsanız LookAt:=xlPart Yazın. Bu durumda "gök" yazınca da "gökhan" ı bulmuş olursunuz.
 
Katılım
14 Aralık 2016
Mesajlar
100
Excel Vers. ve Dili
2010 VB
Altın Üyelik Bitiş Tarihi
11-11-2020
bunu on error olmadan if ile yapamaz mıyız ?
 

turist

Destek Ekibi
Destek Ekibi
Katılım
18 Kasım 2009
Mesajlar
5,102
Excel Vers. ve Dili
2013 64Bit
English
merhaba, ben bir sütunda bir değeri aratmak istiyorum ve var yada yok değerinin dönmesini istiyorum nasıl yapabiliriz ?
öerneğin f sutununda "gökhan" değeri varsa var yoksa yok değerini almam lazım.
Örnek:
Sub bul()
Dim arama As Long: arama = Application.WorksheetFunction.CountIf(Columns(6), "gökhan")
If arama > 0 Then
MsgBox "var"
Else
MsgBox "yok"
End If
End Sub
 
Katılım
14 Aralık 2016
Mesajlar
100
Excel Vers. ve Dili
2010 VB
Altın Üyelik Bitiş Tarihi
11-11-2020
tam istediğimde buydu çok teşekkür ederim elinize sağlık.
 
Katılım
1 Mart 2021
Mesajlar
5
Excel Vers. ve Dili
Excel İngilizce
Merhaba

Bu arama şeklini filtrelenmiş bir sütunda, son dolu hücreye kadar bakacak şeklinde "gökhan" dışında veri var mı? veya tüm sütuna bakacaksa "gökhan" ve ya boş hücre "" dışında veri varmı? yoksa "kodlara devam eder" , varsa "msgbox" şekline nasıl döndürebiliriz. Çok aradım bulamadım. Yardımcı olabilir misiniz?

Not: aslında istediğim filtrelenmiş stunda "gökhan" dışında veri olmaması. olduğunda uyarı verecek ve sub bitirecek.

Teşekkürler,
Saygılarımla,
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,190
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
#2 numaralı mesajda verilen çözümü denediniz mi?
 
Katılım
1 Mart 2021
Mesajlar
5
Excel Vers. ve Dili
Excel İngilizce
Korhan bey,

Ben değer aramak değil de filtrelenmiş sütunda belirlediğim değer dışında bir veri varsa sub bitirmesini yok ise makroya devam etmesini istiyorum. Hücreleri sütundaki son dolu hücreye kadar aratamadım. xldown komutu ile xlUp komutunu denedin ancak olmadı. Kullandığım makro:

Kod:
Windows("XXX.xlsm").Activate

            Sheets("XX1").Select

            Range("a1").Select

        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks_

        :=False, Transpose:=False

   Selection.AutoFilter

    ActiveSheet.Range("A:B").AutoFilter Field:=4, Criteria1:="Hisse"

    ActiveSheet.Range("A:B").AutoFilter Field:=14, Criteria1:=""

            For i = 2 To 10000

            If Range("E" & i).End(xlDown).Value = "THYAO" Then

            Range("A2:N" & Range("N900000").End(xlUp).Row).Select

            Selection.Delete Shift:=xlUp

            Else

            MsgBox "Fiyatİ olmayan THYAO dışında hisseler mevcut. Kontrol ediniz."

            Exit Sub

            End If

            Next
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,190
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Örnek dosya paylaşarak yapmak istediğiniz işlemi açıklarsanız yardım almanız kolaylaşır.
 
Katılım
1 Mart 2021
Mesajlar
5
Excel Vers. ve Dili
Excel İngilizce
Merhaba,

İlgili doyayı paylaşamıyorum malesef. Aslında yukarıda yazdığım ve paylaştığım makro gayet açık. Ben size daha da açıklık getireyim. Burada destek almak istediğim kısım For İF döngüsü.
Kod:
For i = 2 To 10000

            If Range("E" & i).End(xlDown).Value = "THYAO" Then
Buradaki kod ile stundaki her hücreye tek tek baktıramıyorum. xlDown yazdığımda sadece ilk boş hücreye bakıyor clUp yaptığımda sacede ilk dolu hücreye bakıyor. Bana E sütunundaki filtrelenmiş alanda son dolu hücreye kadar "THYAO" dışında değer var mı bakacak bir kod lazım. Yardımcı olabilirseniz sevinirim.

Teşekkürler,
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,190
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Bu şekilde deneyiniz.

C++:
Option Explicit

Sub Test()
    Dim Son As Long, Alan As Range, Veri As Range
    
    Son = Cells(Rows.Count, "E").End(3).Row
    
    On Error Resume Next
    Set Alan = Nothing
    Set Alan = Range("E2:E" & Son).SpecialCells(xlCellTypeVisible)
    On Error GoTo 0
    
    For Each Veri In Alan
        If Veri.Value <> "THYAO" Then
            MsgBox "Farklı değer bulundu!", vbCritical
            Exit Sub
        End If
    Next
    
    MsgBox "Farklı değer bulunamadı.", vbInformation
End Sub

Bu da alternatif olsun;

C++:
Option Explicit

Sub Test()
    Dim Say As Long
    Say = Evaluate("=SUMPRODUCT(SUBTOTAL(3,OFFSET(E2:E1000,ROW(E2:E1000)-MIN(ROW(E2:E1000)),,1))*(E2:E1000<>""THYAO""))")
    If Say <> 0 Then MsgBox "Farklı değer bulundu!", vbCritical
End Sub
 
Katılım
1 Mart 2021
Mesajlar
5
Excel Vers. ve Dili
Excel İngilizce
Korhan bey çok teşekkürler desteğiniz için. Sağolun. iyi akşamlar.
 
Katılım
18 Ocak 2018
Mesajlar
1
Excel Vers. ve Dili
Office profesyonel Plus 2013
kolay gelsin iyi çalışmalar. bende bu konularda yeniyim. çalıştığım yerde demir baş sayımı yapmak için bir excell listesi hazırlıyorum. biraz yol katettim ama şu konuda takıldım sizin yardımınızı bekliyorum.

E3 hücresinde bulunan sayısal değeri, E6 ve altındaki hücrelerde arayıp bulmak ve bulunan hücre satırını seçmek istiyorum. yardımcı olursanız sevinirim
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,190
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Deneyiniz.

Kod:
Sub Find_Data()
   Dim X As Range 
   
   Set X = Range("E6:E1048576").Find(Rande("E3").Value, LookAt:= xlWhole)
   If Not X Is Nothing Then 
      X.EntireRow.Select
   Else
      MsgBox "Aradığınız değer bulunamadı!", vbCritical
   End If
End Sub
 
Üst