Sütundaki VBA Bul Değeri

Bu makale, bir sütunda bir değer bulmak için VBA'nın nasıl kullanılacağını gösterecektir.

Belirtilen ölçütlerle eşleşen aralıktaki tüm hücreleri bulmak için VBA'da bir değerler sütunu arasında dolaşmak için Range.Find'i kullanabiliriz.

Range.Find ve Range.FindNext ile bir sütunda döngü yapma

Aşağıdaki örnekte, sütundaki veriler arasında dolaşıyoruz ve "Gecikmiş" kelimesini arıyoruz. Kelimeyi bulduğunda, hücre metninin rengini kırmızıya çevirerek hücreyi işaretleyecektir. Daha sonra, bir sonraki hücreye geçmek ve kelimeyi aramaya devam etmek için Range.FindNext yöntemini kullanacağız ve belirtilen hücre aralığının sonuna kadar döngüyü sürdüreceğiz.

1234567891011121314151617 Alt FindLoop()Dim strFirstAddress As StringDim rngFindValue As AralığıDim rngAralık Olarak AraDim rngAralık Olarak BulSet rngFind = ActiveSheet.Range("F1:F17")Set rngSearch = rngFind.Cells(rngFind.Cells.Count)Set rngFindValue = rngFind.Find("Gecikmiş", rngSearch, xlValues)rngFindValue Değilse O Zaman Hiçbir Şey DeğilsestrFirstAddress = rngFindValue.AddressrngFindValue.Font.Color = vbRedYapmakrngFindValue = rngFind.FindNext(rngFindValue) olarak ayarlayınrngFindValue.Font.Color = vbRedrngFindValue.Address = strFirstAddress'e Kadar DöngüBitirAlt Bitiş

Kod çalıştığında, değişkende verilerin bulunduğu ilk hücrenin adresini kaydeder. strFirstAdres ve metnin rengini kırmızıya değiştirir. Ardından, gerekli verileri içeren sonraki hücreyi bulmak için bir döngü oluşturulur. Değer bulunduğunda, metnin rengi kırmızı olarak değiştirilir ve ardından değerin bulunduğu hücrenin adresi dize ile karşılaştırılır. strFirstAdres. Bunlar aynı değilse, “Gecikmiş” kelimesinin her bir örneğini bularak döngü devam eder. Döngü hücre aralığının sonuna ulaştığında (yani F17), aralığın başlangıcından (F1) başlayacak ve döngüye devam edecektir. İkinci kez F3 hücre adresine ulaştığında, saklanan değişkenle aynı olduğu için strFirstAdres, döngü duracaktır.

wave wave wave wave wave