Ömer BARAN
Uzman
- Katılım
- 8 Mart 2011
- Mesajlar
- 12,986
- Excel Vers. ve Dili
- Office 2013 ( 32 bit ) TÜRKÇE
Mevcut excel belgesindeki makro kodu 2 no'lu mesajda.
Mevcut bu kod; O - BQ sütunları arasındaki 55 seçenekten, maalesef sadece birinci seçeneği getiriyor.
Excel belgemin HESAP sayfasındaki E stununda KALIP isimleri var, bunlar arasında tekrarlananlar da mevcut.
Diğer sayfamda ( 04.kal. mak eşleşmesi) ise bu kalıpların hangi makinelere takılabildiğini gösterir bir liste var.
04... sayfasındaki bilgilerin anlamı şudur:
Satırlar: her bir kalıbın takılabildiği makinelerin isimleridir.
Sütunlar: her bir makineye takılabilecek kalıplar hangileridir.
Belgenin HESAP sayfasında; E sütunundaki kalıp adından hareketle 04.kal.mak eşl... sayfasından, O-BQ sütunlarına bilgi çekiliyor.
HESAP sayfası E sütunundaki değerlerin karşısına O-BQ sütunlarındaki seçeneklerden birinin M sütununa yazılmasını sağlamam gerekiyor.
AMAÇ:
Bu yapılırken de hedefim tam olarak şöyleydi; M sütununda bir satıra yazılacak makine isminin, yazıldığı satırdan önce en az tekrarlanması.
Örneğin E7 hücresindeki K_355 isimli kalıp için tek makine seçeneği var ( M_05), bu makine aynı zamanda E18 hücresindeki K_294 isimli kalıbın da makine seçeneklerinden biri durumunda. Böyle olunca M_05 isimli makineyi tek seçeneği olduğu için K_355 isimli kalıba tahsis etmek, K_294 isimli kalıp için M_05 isimli makine seçeneği yerine diğer seçeneklerden biri olan örneğin M_11 'i tahsis etmek gerekiyor.
Sonuçta ihtiyaç olan kalıbı boş ilk makineye tahsis ederek bekleme süresini azaltmaya çalışıyorum. Çünkü makine sayısı 55 ile sınırlı.
Buraya kadar yazdıklarımı sağlamak üzere Sayın Mustafa Mutlu Bey tarafından yazılmış olan makro mevcut.
MEVCUT MAKROYA İLİŞKİN SORUNU ŞU ÖRNEKLE AÇIKLAMAYA ÇALIŞAYIM
Makronun makine adlarını yazdığı M sütununda; örneğin M_03 'ü süzdüğümde;
M_03 isimli makine,
K_012, K_014, K_79, K_148, K_254, K_268, K_275 ve K_300
isimli kalıpların karşısına yazılmıştır.
- K_254 için zaten başka seçenek yok zorunlu olarak M_03 ile eşleşecek,
Ancak;
- K_14 için M_55 seçeneği de var ve bu makine ismi daha önce kullanılmamış,
- K_148 için daha önce hiç kullanılmamış olan M_54 seçeneği var,
- K _268 için daha önce kullanılmamış M_51 seçeneği var,
- K_275 için daha önce kullanılmamış M_35 seçeneği var,
- K_300 için yine daha önce kullanılmamış M_48 seçeneği var,
Benzer durum, makronun atayabilecek iken ( seçenekler arasında olmasına rağmen ) atamadığı M_26, M_29, M_33, M_34, M_35, M_43, M_48, M_51, M_52, M_53, M_54 ve M_55 isimli makineler var.
Oysa makrodan beklentim;
MAKRO ilgili sütunda satır satır işlem yaptığına göre; makronun başka seçenek kalmadığında daha önceki satırlarda kullanılmış makine ismini getirmesi, seçenek varsa aynı makine ismini getirmemesiydi.
İnşallah bunu sağlayacak bir kod değişikliği mümkün olur.
Lütfen destek. Kod yazma işinden de pek anlamıyorum çünkü.
Mevcut bu kod; O - BQ sütunları arasındaki 55 seçenekten, maalesef sadece birinci seçeneği getiriyor.
Excel belgemin HESAP sayfasındaki E stununda KALIP isimleri var, bunlar arasında tekrarlananlar da mevcut.
Diğer sayfamda ( 04.kal. mak eşleşmesi) ise bu kalıpların hangi makinelere takılabildiğini gösterir bir liste var.
04... sayfasındaki bilgilerin anlamı şudur:
Satırlar: her bir kalıbın takılabildiği makinelerin isimleridir.
Sütunlar: her bir makineye takılabilecek kalıplar hangileridir.
Belgenin HESAP sayfasında; E sütunundaki kalıp adından hareketle 04.kal.mak eşl... sayfasından, O-BQ sütunlarına bilgi çekiliyor.
HESAP sayfası E sütunundaki değerlerin karşısına O-BQ sütunlarındaki seçeneklerden birinin M sütununa yazılmasını sağlamam gerekiyor.
AMAÇ:
Bu yapılırken de hedefim tam olarak şöyleydi; M sütununda bir satıra yazılacak makine isminin, yazıldığı satırdan önce en az tekrarlanması.
Örneğin E7 hücresindeki K_355 isimli kalıp için tek makine seçeneği var ( M_05), bu makine aynı zamanda E18 hücresindeki K_294 isimli kalıbın da makine seçeneklerinden biri durumunda. Böyle olunca M_05 isimli makineyi tek seçeneği olduğu için K_355 isimli kalıba tahsis etmek, K_294 isimli kalıp için M_05 isimli makine seçeneği yerine diğer seçeneklerden biri olan örneğin M_11 'i tahsis etmek gerekiyor.
Sonuçta ihtiyaç olan kalıbı boş ilk makineye tahsis ederek bekleme süresini azaltmaya çalışıyorum. Çünkü makine sayısı 55 ile sınırlı.
Buraya kadar yazdıklarımı sağlamak üzere Sayın Mustafa Mutlu Bey tarafından yazılmış olan makro mevcut.
MEVCUT MAKROYA İLİŞKİN SORUNU ŞU ÖRNEKLE AÇIKLAMAYA ÇALIŞAYIM
Makronun makine adlarını yazdığı M sütununda; örneğin M_03 'ü süzdüğümde;
M_03 isimli makine,
K_012, K_014, K_79, K_148, K_254, K_268, K_275 ve K_300
isimli kalıpların karşısına yazılmıştır.
- K_254 için zaten başka seçenek yok zorunlu olarak M_03 ile eşleşecek,
Ancak;
- K_14 için M_55 seçeneği de var ve bu makine ismi daha önce kullanılmamış,
- K_148 için daha önce hiç kullanılmamış olan M_54 seçeneği var,
- K _268 için daha önce kullanılmamış M_51 seçeneği var,
- K_275 için daha önce kullanılmamış M_35 seçeneği var,
- K_300 için yine daha önce kullanılmamış M_48 seçeneği var,
Benzer durum, makronun atayabilecek iken ( seçenekler arasında olmasına rağmen ) atamadığı M_26, M_29, M_33, M_34, M_35, M_43, M_48, M_51, M_52, M_53, M_54 ve M_55 isimli makineler var.
Oysa makrodan beklentim;
MAKRO ilgili sütunda satır satır işlem yaptığına göre; makronun başka seçenek kalmadığında daha önceki satırlarda kullanılmış makine ismini getirmesi, seçenek varsa aynı makine ismini getirmemesiydi.
İnşallah bunu sağlayacak bir kod değişikliği mümkün olur.
Lütfen destek. Kod yazma işinden de pek anlamıyorum çünkü.
Son düzenleme:
