Sonuçları farklı bir sütundaki aralıklara göre sınırlayan bir sütunda yinelenen değerleri nasıl bulabilirim?


1
     A          B            C
1  RANGES     VALUES   FORMULA NEEDED  
2    1          x           yes
3    1          x           yes
4    2          x           no
5    3                      no
6    3          y           yes
7    3          y           yes
8    4          x           no
9    5          z           no
10   5          y           no

Bu yüzden VALUES'te kopyaları belirlemek, sonuçları RANGES'teki değerlere göre sınırlamak istiyorum. Sonucun FORMULA GEREKEN sütununda olduğu gibi olmasını isterim.

İhtiyacım olan, DEĞERLER sütunundaki yinelenen değerler. Daha spesifik olarak, DEĞERLER sütununda bulduğum şeyin bir kopya olup olmadığını görmem gerekir, RANGES sütunundan kopya aralığını sınırlayıcı olarak kullanarak (bu önemlidir). Umarım bu mantıklı geldi.

Öyleyse: - x, 1 numaralı satırlarda çoğaltılırsa, bu bir evet. - y, 3 numaralı satırlara kopyalanır, hatta boş değerler veya içine atılan x gibi ek değerler olsa bile, bu hala bir evet.

Bu benim başarısız girişimim:

=IF(AND(A2=A1,B2=B1),"yes","no")

Bir VLOOKUP denemeniz gerektiğinden şüpheleniyorum (bu konuda yeterince bilgim yok) veya VBa kullanarak
Dave

Bunu yapmanın yaygın bir yolu yardımcı bir sütundur. 2 satırına = = A2 & B2; Ardından bu sütundaki kopyaları arayın.
fixer1234

Yanıtlar:


0

VBA kullanmanız gerekir.

Yani yapmanız gereken, A + B sütununun değerlerini bir diziye okumaktır.
Diyelim ki biz bir dizi adlı CC (1) A2 + B2 = "1x" olacaktır; C (2), A3 + B3 = "1x" olacaktır; C (3): A4 + B4 = "2x"; vb.
Bunun için C (i) ile ilgili tüm değerleri okumak için bir for döngüsü yaparsınız.

Bunu yaptıktan sonra, sadece google excel vba how to find duplicate values in an array
Bunun için çok fazla çözüm olacağından eminim.

Bunu aldıktan sonra, muhtemelen Booleans'da (true / false) değerleri başka veya aynı diziye kaydeden bir dizi elde edersiniz.

Yani sadece döngü için başka çalıştırmak, gibi bir şey görünecek:
for i = 1 to NumberOfRows if C(i) = true then Cells(i, "C").Value = "true" next i

Tabii ki daha olası çözümler var, ama ben böyle yaparım.
Sorularınız varsa, sormakta tereddüt etmeyin!


Sorunu çözmeyi başardınız mı? Gönderim yardımcı olduysa, kabul etmeyi unutmayın, böylece gönderim kapatılabilir. Başka bir yolla çözdüyseniz, lütfen çözümü açıklayan sorunuza birkaç kelimeyle cevap verin.
Divin3
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.