• Foruma hoş geldin 👋 Ziyaretçi

    Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

Çözüldü Yapamadığım Bir Tarama Makrosu

Bu sorun verilen destek sayesinde çözüme ulaştırılmıştır.
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

ArasKo

Bronz Üye
Kullanıcı Bilgileri
Katılım
8 Mar 2023
Mesajlar
64
Aldığı beğeni
6
Excel Versiyonu
Office 2016 TR
Konuyu Başlatan
Merhaba. Belli kriterleri sağlayan hücreleri birleştirmek için oldukça basit bir makroya ihtiyacım vardı. Ekteki dosyayı görüyorsunuz A ve B sütunlarında "3,4,5,20" formatında rakamlar yer almakta. Bir de "ortak değerler" adı altında bir takım rakamlar var tabloda en sağda paylaştım. Yapılacak olanlar şunlar:

  • Tabloda yan tarafta "Ortak değerler" adında "3,4,5,7" rakamları var.
  • A2 ile B2' den başlayıp en sona kadar olan tüm hücreler kıyaslanacak. Sonra A3 ile B2' den itibaren tüm hücreler kıyaslanacak ve bu, A' daki tüm hücreler için yapılacak. Aşağıdaki a ve b kurallarına uygun olan hücreler aynı hücrede birleştirilip listelenecek
a) A' daki bir hücrede yer alan ortak değerlerin aynısı, B' deki hücrede de olmalı. A' da yer almayan bir ortak değer, B' deki hücrede de yer almamalı
b) Hem A hem de B' deki hücrede hiç bir ortak değer yer almamalı.
c) B' de yer alan ve içeriğinde hiç bir ortak değer bulundurmayan hücreler de A' da herhangi bir hücreyle kıyaslanmadan birleştirilmeden doğrudan listeye eklenir
Ör: A7 ile B34' e bakalım: Her ikisinde de oratka değerlerden 3 ve 4 var. Dolayısıyla bu iki hücreyi birleştiririz
Ör2: A7 ile B11 birleşemez. Çünkü A7' de ortak değerlerden sadece 3 ve 4 varken, B11' de ise 3 ve 4 ile birlikte diğer ortak değerler olan 5 ve 7' de var. Yani "a" maddesi gereği A' da olmayan bazı ortak değerler B' de yer almakta.
Ör3: A30' da ortak değerlerden hiç birisi yok. B41'de de yok o halde bu iki hücre aynı hücrede birleştirilebilir.
Ör4: B2' de sadece 1 var ve herhangi bir ortak değer de yok. A' dan herhangi bir hücreyle kıyaslanmadan, doğrudan listeye eklenir. (F' deki liste)
  • Eğer hiç bir şartı sağlayan hücre olmazsa, doğal olarak herhangi bir birleştirme işlemi de olmayacak
  • A ve B' deki hücre sayısı eşit değildir ve değişken sayıdadır
  • F sütununda gerekli kriterleri sağlayan hücrelerin birleştirilmiş halini görüyorsunuz. İşte böyle bir çıktı vermesi gerekiyor makronun.

Biraz aciliyeti ve önemi var benim için. Görüldüğü üzere oldukça basit bir makro lazım. Ben A ve B sütunlarındaki değerleri girerim. Ayrıca "ortak değerler"i gireceğim bir bölme de olur. Makroyu çalıştırınca F' deki gibi bir liste ortaya çıkar. Bir de mümkünse makronun biraz hızlı olması gerekiyor. Eğer yardımcı olabilirseniz çok sevinirim. Teşekkür ederim, herkese hayırlı ramazanlar diliyorum..
 

Ekli dosyalar

  • UYGULAMA.xlsx
    13.7 KB · Gösterim: 9
A sütunun tek bir veri olsun B sütununda 10 veri olsun A2 deki veriye göre F sütununda listelenen bir örnek ekleyin.
 
Merhaba. Gelişigüzel şekilde A' dan bir, B' den de 10 satır seçtim ve kurala uygun sadece iki adet hücre birleşim listesinde yer alabildi. F3' te iki hücredeki rakamlar iki kez tekrar etmemesi için sadece bir kez yer aldı. (3,4 ve 2,3,4,15 birleşti)
 

Ekli dosyalar

  • UYGULAMA.xlsx
    11.4 KB · Gösterim: 10
A1deki veriyi B sütununda taradı, örnek B20de eşleşti F20ye mi birleştiriyor?

Diyelim A40daki veri de B20 de eşleşti nereye birleşecek
 
A1deki veriyi B sütununda taradı, örnek B20de eşleşti F20ye mi birleştiriyor?

Diyelim A40daki veri de B20 de eşleşti nereye birleşecek
Merhaba. aslında o konuda bir sıralama yok. A1' deki veriyi B' de en üstteki hücreyle başlayıp taraya taraya aşağı iner. Artık ilk veriyi nerede bulduysa onu alır, bir sütun oluşturur bulduğu veriler için (F gibi yani) buradan sıralaya sıralaya gider. Bu arada kusura bakmayın sanki benim olayı anlatma yeteneğim zayıf kalıyor gibi. Şöyle ifade edeyim kabaca, bu gözle baktığınızda mantığı daha kolay kavrayacaksınız muhtemelen: A' dan bir hücre seçtik. Bu hücrede ortak değerlerden hangisi var ? 3 ve 4. O halde, B'de ortak değerlerden sadece ve sadece 3 ve 4' ün yer aldığı, başka da bir ortak değerin yer almadığı hücreleri belirleriz. Baktık, 20 adet varmış. İşte bu 20 adet hücreyle, A' da seçtiğimiz hücreyi tek tek birleştiririz. Bir başka örnek: A'da ortak değerlerden hiç birinin yer almadığı bir hücre seçtik. B' de de hiç bir ortak değer olmayan hücreleri tesbit eder, hepsinin tek tek A'daki hücreyle birleştiririz. Bu şekilde bulduğumuz, oluşturduğumuz tüm "birleşik hücreleri" aynı sütunda sıralarız. Sütunun yeri öncemli değil. F olur veya başka bir yer olur, farketmez.
 
Eksikleri örnek vererek açıklayın.
Not Z sütununda veri olmamalı
.
Kod:
Değerli Misafirimiz İçeriği Görebilmek İçin Üyemiz İseniz Giriş Yap'ın Ya da Üye Ol'un.
Çok teşekkür ederim. makroyu çalıştırdım fakat sadece Z sütununda sırayla satırlarda 1,2,3,4,7,15 şeklinde bir liste oluştu.
 
#6 nolu mesajdaki kodlarda değişiklik yaptım.
Kod:
Değerli Misafirimiz İçeriği Görebilmek İçin Üyemiz İseniz Giriş Yap'ın Ya da Üye Ol'un.
Z sütununu yardımcı sütun olarak kullanılıyor.
Eğer Z sütununa kadar uzayan tablonuz varsa, kullanmayacağınız bir sütunda bu işlemi yaptıra biliriz.
Sonuçları kontrol ettiniz mi?
 
Merhaba. Öncelikle çok teşekkür ederim. Fakat tam olarak istenileni vermiyor. İsterseniz ben tekrardan kuralları maddeler halinde yazayım, bir kez daha değerlendirelim. Ayrıca bir ek dosya da verdim örnek A ve B sütunları, baz alınacak "ortak değerler" ve yine F' te birleştirilen hücrelerin yer aldığı. (sadece aşağıdaki c maddesine uygun hücreler eksik, a ve b maddelerine göre birleştirmeler yapılmış).İnceleyin isterseniz örnekler yoluyla. Bu arada bir eksik veya karışık bilgi verebilme ihtimalime karşı peşinen özür dilemek istiyorum ki oruç sebebiyle biraz güçsüz durumdayım.

Aşağıdaki şartları sağlayan hücreler birleştirilir:

a) A'daki bir hücrede yer alan ortak değerlerin aynısı, B'deki hücrede de yer almalı. A'da yer almayan bir ortak değer, B'de de yer almamalı.
b) Hem A hem de B'de hiç bir ortak değer barındırmayan hücreler birleştirilir.
c) B'de hiç bir ortak değer barındırmayan hücreler otomatikman listeye eklenir
 

Ekli dosyalar

  • ÖRNEK.xlsx
    11.9 KB · Gösterim: 5
Şu an evde değilim, üç soru soracağım.
1. a şıkkına göre örneğin;
A sütununda 1,4,7.21 sayıları var.
B sütununda 8,9,4,7 sayıları var.
Bu durumda 4,7 sayıları aynı, her ikisinde başka ortak değer yok.
F sütununda sütununa 1,4,7,8,9,,21
2. c şıkkına göre göre örneğin;
B sütununda 11,12,13,14 değerleri var
A sütununa bakmadan F sütununa 11,12,13,14 değerlerini aktardık.
3. b şıkkına göre göre örneğin;
A sütununda 11,12,13,14 değerleri var
B sütununda 15,16,17,18 değerleri var.
F sütununda sonuç hem 2 sorudaki sonuç, hem de 11,12,13,14,15,16,17,18 listelenecek
doğru mudur?
 
Son eklediğiniz dosyada B sütununda ilk sıradaki 1 in c şıkkına göre F sütunundaki liste de yer alması gerekmiyor muydu.
F sütununda ilk sıradaki 3, 4, 3, 4 sonucunu A ve B sütunundaki hangi satırlara göre belirlediniz ve veriler mükerrer ve sırasız böylemi olması gerekiyor.
 
Son düzenleme:
Şu an evde değilim, üç soru soracağım.
1. a şıkkına göre örneğin;
A sütununda 1,4,7.21 sayıları var.
B sütununda 8,9,4,7 sayıları var.
Bu durumda 4,7 sayıları aynı, her ikisinde başka ortak değer yok.
F sütununda sütununa 1,4,7,8,9,,21
2. c şıkkına göre göre örneğin;
B sütununda 11,12,13,14 değerleri var
A sütununa bakmadan F sütununa 11,12,13,14 değerlerini aktardık.
3. b şıkkına göre göre örneğin;
A sütununda 11,12,13,14 değerleri var
B sütununda 15,16,17,18 değerleri var.
F sütununda sonuç hem 2 sorudaki sonuç, hem de 11,12,13,14,15,16,17,18 listelenecek
doğru mudur?
Evet bravo tam olarak anlamışsınız meseleyi. Sürekli "ortak değerler"i referans alarak "A' da olanların aynısı B'de de eksiksiz bir şekilde olsun, fazlası olmasın. Ayrıca hem A'da hem B' de ortak değer olmasın. B' de hiç ortak değer barındırmayanlar direkt alınsın" şeklinde özetleyebiliriz.
 
Son eklediğiniz dosyada B sütununda ilk sıradaki 1 in c şıkkına göre F sütunundaki liste de yer alması gerekmiyor muydu.
F sütununda ilk sıradaki 3, 4, 3, 4 sonucunu A ve B sütunundaki hangi satırlara göre belirlediniz ve veriler mükerrer ve sırasız böylemi olması gerekiyor.
Evet doğru. 1, F' te bulunmalıydı. Zaten dikkat ederseniz en son paylaşımımda "c maddesindeki kural listede kullanılmamış" diye belirttim. sadece a ve b maddesine göre F oluşturulmuş. "3, 4, 3, 4" ise A16 ile B38 hücrelerinin birleşiminden oluşuyor. Aslında önemli bir noktaya değindiniz "mükerrerlik ve sırasız" durumlarıyla ilgili. Normalde mükerrer ve sırasız olmamalı. Sırf gözle kolayca kontrol yapılabilsin diye rakamlar listede mükerrer ve sırasız olarak yer aldı. Normalde sadece "3, 4" olması yeterli. Eğerli mükerrer ve sırasız olmasaydı neyle neyin birleştirildiğini, işlemin doğru mu yanlış mı olduğunu kontrol edemezdik. Çok teşekkürler..
 
#11 nolu mesajdaki sorularıma cevap yazmamışsınız.
#13 nolu mesajda sorularınızı cevapladım. Mesajınızın sonunda "Doğru mu ?" yazmışsınız, ben de "Evet bravo tam olarak anlamışsınız meseleyi" diye sorunuzu cevaplayarak başladım mesaja. Ekstradan bir sorunuz veya açıklamamı istediğiniz bir yer olursa tekrardan bilgilendirebilirim
 
3. b şıkkına göre göre örneğin;
A sütununda 11,12,13,14 değerleri var
B sütununda 15,16,17,18 değerleri var.
F sütununda sonuç hem 2 sorudaki sonuç, hem de 11,12,13,14,15,16,17,18 listelenecek
Öyle ise #9 mesajda gönderdiğim dosyaya, yukarıdaki alıntıdaki durumu eklersem sorun çözülecek.
Bu ortak değer dediğiniz sayılar değişken mi?
 
Öyle ise #9 mesajda gönderdiğim dosyaya, yukarıdaki alıntıdaki durumu eklersem sorun çözülecek.
Bu ortak değer dediğiniz sayılar değişken mi?
Evet "ortak değer" denilen sayılar ve A-B sütunlarına yazılacak değerler sürekli değişecek. İsterseniz tekrardan son bir kez özetleyim:
  • Elimizde başlangıçta bir "ortak değer listesi" ve A-B sütunlarında rakamlardan oluşan hücreler var
  • Öncelikle A' da bir hücre seçtik
  • A' daki hücrede ortak değerlerden varsa (1 adet olur 3 adet olur, artık kaç tane varsa), bu ortak değerlerin aynısının olduğu B hücreleri birleştirilir. Tabi burada en önemli bir diğer şart, A' da bulunmayan herhangi bir ortak değerin birleştireceğimiz B hücresinde de olmaması gerekir. Yani A' da ortak değerlerden sadece 3 ve 4 varsa, B' de de sadece ve sadece 3 ve 4 bulunmalı. Ekstradan bir başka ortak değer yer almamalı, 3 ve 4' ten de bir tanesi eksik olmamalı
  • Hem A' da hem de B' de ikisinde birden hiç bir ortak değer bulundurmayan hücreler birleştirilir
  • B' de hiç bir ortak değer bulunmayan hücreler olduğu gibi alınıp listeye eklenir.
Bu arada birleşen hücrelerde mükerrer değerler tek adete indirilmeli ve rakamlar sıralı olmalı.
 
Merhaba. #18 nolu mesajda verdiğim bilgilere ilaveten şunu da eklemek istiyorum tablonun daha derli toplu olması açısından: Excel sayfasında A ve B sütunlarında yine rakamlardan oluşan listeler yer alır. C1' de ise "ortak değerler", "1,3,5,7" şeklinde aynı formatta yer alır. Sonrasında yan tarafta uygun bir yerde makroyu çalıştıran buton yer alır. Sonrasında yine uygun bir sütunda (Ör; H sütunu) birleştirilen hücrelerden oluşan liste yer alır. Bu listenin hemen yanındaki sütunda ise -üç maddeden oluşan kurallarımız vardı- birleştirilen hücrelerin hangi maddedeki kurala göre birleştirildiği hemen yan tarafında yer alır. Mesela önce "a" maddesindeki kurala göre birleşenler, sonra "b"deki kurala göre birleşenler gibi. Son bir ricam makro hızlı çalışabilirse çok makbule geçer. Çok teşekkür ederim, iyi çalışmalar..
 
Ortak değerleri F2 hücresine yazın..
A ve B sütunlarına yazacağınız değişik değerlerle test edin Tekrarsız sıralama işini ekleyeceğim.
 

Ekli dosyalar

  • deneme.xlsm
    21.2 KB · Gösterim: 5
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

Konuyu okuyanlar

Geri
Üst