OPTİMİZASYON Yapılabilir mi?

  • Konuyu başlatan Konuyu başlatan Akif59
  • Başlangıç tarihi Başlangıç tarihi

Kısa Açıklama

OPTİMİZASYON Yapılabilir mi? isimli başlıkta, ilgili işlemlere dair detaylar yer almaktadır.
Excel Versiyonu
Excel 2016
Excel Sürümü
64 Bit
Excel Dili
Türkçe
Merhaba

Dosyada DJ 17 Hücresinde önerilen bir değer var

_DJ 17 de önerdiği değeri yada 16 satırdan kendim seçtiğim değeri DJ 18 DJ117 aralığına yazınca 16 satırda kaç tane olduğunu buluyor bu olayı butonla çalıştırmak mümkün müdür
ihtiyaç halinde kullanmak için

Onun yerine DJ17 öneride bulunmasın her satırda maksimum 10 minimum 3 tane bulacak şekilde önerdiği değerleri DJ Sütununa yukarıdan aşağı kendisi yazsın ve 16 satırdaki - değerleri en iyi seçenekle bitirsin

Neden maksimum 10 derseniz ben kıyafet çizimi yaptığım için bir çizimin içine maksimum 10 beden koyuyorum
Yardımcı olup çözüm üretebilecek değerli forum yöneticileri ve üyelere şimdiden teşekkür ederim
 
Ekli dosyalar
Merhaba @Akif59 .

Yazdığınız "satırdaki - değerleri en iyi seçenekle bitirsin" ibaresi çok net değil doğrusu.

Aşağıdaki kodu mevcut makroya ekleme yapmadan ayrı bir makro olarak, Imalat sayfası aktif sayfa iken çalıştırıp,
farklı veri setleriyle denemeler yapın.

CSS:
Görüntülemek için giriş yapmanız gerekmektedir.
(26 satır)

.
 
Merhaba @Akif59 .

Yazdığınız "satırdaki - değerleri en iyi seçenekle bitirsin" ibaresi çok net değil doğrusu.

Aşağıdaki kodu mevcut makroya ekleme yapmadan ayrı bir makro olarak, Imalat sayfası aktif sayfa iken çalıştırıp,
farklı veri setleriyle denemeler yapın.

[Gizlenmiş içerik]

.
Sayın BARAN Merhaba öncelikle teşekkür ederim
_el ile giriş yaptığımda hesaplama yapan kodu destekleyen bir kod mudur? onu kaldırmadan denedim
_ Her çalıştırdığımda farklı seçenekler sunabilir mi ? manüel hazırladığımda dahi en az üç seçenek sunuyorum
_ Amaç herzaman yüksek KUMAŞ KATI Az BEDEN SAYISI Olmalıdır gürseldeki 3 kumaş katı 8 bedenlik bir çizim kesinlikle kesim onayı alamayacağım bir seçenek değil DJ Sütunu Kumaş katında aynı değeri birden fazla kullanabilir.

1589148004477.webp
 
Moderatörün son düzenlenenleri:
Sayın @Akif59 .

Birden fazla seçenek dediğinizde olay boyut değiştirir ve özel bir çalışma yapılması gerekir.

Verdiğim kod, mevcut Worksheet_Change kodundan yararlanıyor zaten.

İşleyiş şöyle;
-- 16'ncı satırdaki büyüklük sırasına göre 10'uncu değeri bulur,
-- DJ sütununda ilgili satıra bu değer yazıldığında, DK sütununda oluşacak değeri bulur,
-- bu değer 10'dan büyükse, sayıyı 1 azaltır ve tekrar aynı kontrolü yapar, olmazsa 1 daha 1 daha azaltılır,
-- 10 ve altında değere rastlandığında sayı DJ sütununa yazılır, D : DI aralığındaki değerler Change kodu tarafından yazılır,
-- Bir sonraki satıra geçilir, ta ki DJ ye yazılacak değer 5'e gelinceye kadar (bana kalsa işlemin burada kesilmesi daha doğru olur)
-- Değer 5'e geldiğinde de sırasıyla DJ sütununa 5, 4, 3, 2 ve 1'i yazar, Change koduda buna göre D : DI arasını yazar.

.
 
Tekrar merhaba.

Eklediğiniz son belgeyi incelemedim.

Mevcut Worksheet_Change kodunda herhangi bir işlem yapmadan,
aşağıdaki kodu, Change kodunun olduğu Imalat sayfasının kod bölümüne yapıştırın ve
DJ17 hücresine fareyle ÇİFT tıklayarak oluşan sonuçları kontrol edin.

Bu hücreye her çift tıklamada yeni bir veri serisi elde edilecektir. Kod çalışırken hücre KIRMIZI olur, tamamlandığında YEŞİL'e döner.
Kod, DJ sütununa yazılan değerleri, şimdilik 1'e kadar götürmüyor (bilginize)

VBA:
Görüntülemek için giriş yapmanız gerekmektedir.
(59 satır)

.
 
Tekrar merhaba.

Eklediğiniz son belgeyi incelemedim.

Mevcut Worksheet_Change kodunda herhangi bir işlem yapmadan,
aşağıdaki kodu, Change kodunun olduğu Imalat sayfasının kod bölümüne yapıştırın ve
DJ17 hücresine fareyle ÇİFT tıklayarak oluşan sonuçları kontrol edin.

Bu hücreye her çift tıklamada yeni bir veri serisi elde edilecektir. Kod çalışırken hücre KIRMIZI olur, tamamlandığında YEŞİL'e döner.
Kod, DJ sütununa yazılan değerleri, şimdilik 1'e kadar götürmüyor (bilginize)

[Gizlenmiş içerik]

.
Merhab Sayın BARAN
Böyle bir plan ortaya çıkardı
16 satırda tek haneli değer bırakmadan nasıl bir yol izlediğimi dj sütununa tek haneli değer girmek zorunda kalmadığımı son paylaştığım örnek dosyada anlatmaya çalıştım
1589244644221.webp
 
Moderatörün son düzenlenenleri:
Merhaba Sayın BARAN
10 seçenekte de ilk 7 kesim çok güzel tam istediğim gibi son 5 kesim tüm seçeneklerde tek naneli kesinlikle onay verilmez

son örnek dosyada anlatmaya çalıştım her hangi bir kesimde devam eden kesimler için tek haneli - adet kalıyor ise o bedeni sonraki kesimlere bırakıyorum müşteri herhangi bir bedenden tek haneli adet talebi olmadığı sürece ben DJ sütununda tek haneli değer kullanmıyorum kesinlikle

DJ sütunda neden tek hane mecbur kalmayınca kullanmıyorum çizim üzerinden anlatma çalışayım

DJ sütunda 2 kat dediğimiz içine de 7 beden koyduğumuz bir çizim ile sadece 14 pantolon kesersiniz bu şekilde bir kesimin onayı maalesef
verilmiyor


1589279035509.webp
 
Moderatörün son düzenlenenleri:
Akif bey, sayılar sizin için ölçü, kesim fire ifade ediyor olabilir.Benim için bunlar sadece SAYI.

HEDEF'i net ifade etmediğinizi düşünüyorum açıkçası. Excel belgesi üzerinden yazışmak gerekiyor.
DJ sütununa 10'dan küçük sayı yazılmayacaksa; verdiğim seçeneklerde ilk 7 satır tamamlandığında işlem kesilirse istediğiniz oluyor mu?
Bu verilerin alttaki tablolarla bağlantısı konusunda bir fikrim yok doğal olarak.

Örneğin;
-- 1 no'lu seçenekte ilk 7 sayı verdiğim sırayla alana yazıldığında, 16'ncı satırda toplamı 153 olan 23 adet sütunda sayılar kalıyor.
-- 2 no'lu seçenekte ilk 7 sayı verdiğim sırayla alana yazıldığında, 16'ncı satırda toplamı 132 olan 22 adet sütunda sayılar kalıyor.
-- 3 no'lu seçenekte ilk 7 sayı verdiğim sırayla alana yazıldığında, 16'ncı satırda toplamı 155 olan 25 adet sütunda sayılar kalıyor.
-- 10 no'lu seçenekte ilk 7 sayı verdiğim sırayla alana yazıldığında, 16'ncı satırda toplamı 94 olan 24 adet sütunda sayılar kalıyor.

Verdiğim örneklere göre olması gerekenden farklı olan nedir? Neyi arıyoruz, hedef nedir?

.
 
Akif bey, sayılar sizin için ölçü, kesim fire ifade ediyor olabilir.Benim için bunlar sadece SAYI.

HEDEF'i net ifade etmediğinizi düşünüyorum açıkçası. Excel belgesi üzerinden yazışmak gerekiyor.
DJ sütununa 10'dan küçük sayı yazılmayacaksa; verdiğim seçeneklerde ilk 7 satır tamamlandığında işlem kesilirse istediğiniz oluyor mu?
Bu verilerin alttaki tablolarla bağlantısı konusunda bir fikrim yok doğal olarak.

Örneğin;
-- 1 no'lu seçenekte ilk 7 sayı verdiğim sırayla alana yazıldığında, 16'ncı satırda toplamı 153 olan 23 adet sütunda sayılar kalıyor.
-- 2 no'lu seçenekte ilk 7 sayı verdiğim sırayla alana yazıldığında, 16'ncı satırda toplamı 132 olan 22 adet sütunda sayılar kalıyor.
-- 3 no'lu seçenekte ilk 7 sayı verdiğim sırayla alana yazıldığında, 16'ncı satırda toplamı 155 olan 25 adet sütunda sayılar kalıyor.
-- 10 no'lu seçenekte ilk 7 sayı verdiğim sırayla alana yazıldığında, 16'ncı satırda toplamı 94 olan 24 adet sütunda sayılar kalıyor.

Verdiğim örneklere göre olması gerekenden farklı olan nedir? Neyi arıyoruz, hedef nedir?

.
Sayın BARAN verdiğiniz son çalışma tüm seçeneklerde ilk 7 rakamı çok güzel sunuyor sorasında 16 satırı sıfırlamak için tek haneli sayılar sunuyor

hesap maki nası ile bir tane hazırladım DJ Sütununda hiç tek haneli sayı kullanmadan plan bitti


1589283377583.webp
 
Moderatörün son düzenlenenleri:
Bu şekilde olunca iletişim sorunu yaşanıyor. Aynı veri seti üstünden konuşmak lazım.
7 ve 11 numaralı cevaplarınıza eklediğiniz veri setleri birbirinden farklı.

Aynı veri seti üstünden devam ederseniz iyi olur.

Çözüm diye verdiğiniz sayıları DJ sütununa sırayla yazdığımda, ekran görüntüsündeki sonuçlar alınıyor değil.
Ekran görüntüsüne göre; 148 yazıldığında D : DI arasında da, DK sütununda da 10 sayısı oluşamaz.
148'in satırında, 9 adet 1 var ama DK sütunununda 10 yazılı, 40'ın satırında 2 hücre dolu ve toplamı 6 iken DK sütununda 2 yazılı,
22'nin satırında 5 adet 1 var ama DK sütununda 10 yazılı.

İşte hesap makinesiyle yaptığınız işlemlerin sistematiğini açıklamanız gerekiyor. Çözüm burada.
Neyle neyi kıyaslıyorsunuz, hangi sayıyı yazacağınıza DJ18'den başlayarak nasıl karar verdiğinizi,
veri giriş sıranızı ve bu sırayı nasıl tespit ettiğinizi açıklamalısınız.

Dikkat ederseniz benim verdiğim seçeneklerde DJ sütununa yazılacak sayılar AZALARAK gitmektedir ve mantıklı olanı da budur.
Ekran görüntüsüne göre DJ sütununa bir sayı yazıldıktan sonra, alttaki satırlarda daha büyük bir sayı yazılamaz.
Yazılırsa sonuç BOŞ olmalıdır, çünkü 16'ncı satırda bu sayıdan daha büyük bir sayı kalmamış olmalıdır ve sonuçta da DK sütununda sayı oluşamaz.
Ekran görüntüsündeki sonuçlar, belgenizle ilgili olarak şimdiye kadar yapılan tüm kodlamalarla çelişiyor gibi görünüyor.

.
 
Bu şekilde olunca iletişim sorunu yaşanıyor. Aynı veri seti üstünden konuşmak lazım.
7 ve 11 numaralı cevaplarınıza eklediğiniz veri setleri birbirinden farklı.

Aynı veri seti üstünden devam ederseniz iyi olur.

Çözüm diye verdiğiniz sayıları DJ sütununa sırayla yazdığımda, ekran görüntüsündeki sonuçlar alınıyor değil.
Ekran görüntüsüne göre; 148 yazıldığında D : DI arasında da, DK sütununda da 10 sayısı oluşamaz.
148'in satırında, 9 adet 1 var ama DK sütunununda 10 yazılı, 40'ın satırında 2 hücre dolu ve toplamı 6 iken DK sütununda 2 yazılı,
22'nin satırında 5 adet 1 var ama DK sütununda 10 yazılı.

İşte hesap makinesiyle yaptığınız işlemlerin sistematiğini açıklamanız gerekiyor. Çözüm burada.
Neyle neyi kıyaslıyorsunuz, hangi sayıyı yazacağınıza DJ18'den başlayarak nasıl karar verdiğinizi,
veri giriş sıranızı ve bu sırayı nasıl tespit ettiğinizi açıklamalısınız.

Dikkat ederseniz benim verdiğim seçeneklerde DJ sütununa yazılacak sayılar AZALARAK gitmektedir ve mantıklı olanı da budur.
Ekran görüntüsüne göre DJ sütununa bir sayı yazıldıktan sonra, alttaki satırlarda daha büyük bir sayı yazılamaz.
Yazılırsa sonuç BOŞ olmalıdır, çünkü 16'ncı satırda bu sayıdan daha büyük bir sayı kalmamış olmalıdır ve sonuçta da DK sütununda sayı oluşamaz.
Ekran görüntüsündeki sonuçlar, belgenizle ilgili olarak şimdiye kadar yapılan tüm kodlamalarla çelişiyor gibi görünüyor.

.
Merhaba Sayın BARAN
Anlatabileceğim en iyi şekilde örnek dosyada anlattım bazı hücreleri sizin veri girmeniz için hazırladım amaç geride tek haneli değer bırakmadan seçimler yapmak bunun sonucu olarakda DJ sütununa kısır döngüye girmediğiniz sürece tek haneli değer seçmek zorunda kalmıyorsunuz
 
Ekli dosyalar
Merhaba sayın BARAN
Nasıl bir talep olduğunu tekrar anlatın demiştiniz örnek dosya da uygulama ile anlatmaya çalıştım bakabildiniz mi bir çözüm üretilebiliyor mu
 
Akif Bey.
Eklediğiniz örnek belgeye baktım.
İşleyiş algoritmasını (aslında algoritma dediğimiz şey, yazılacak sayıları seçerken aklınızdan geçenlerin kodlanmış hali oluyor)
tam olarak anladığımı söyleyemem.
Tek (aynı) bir veri seti için, birden fazla çözüm yolu (sonuna kadar tüm sayıları içerecek şekilde) olduğunu sayısal olarak örneklendirmek lazım.

Sakin, uygun bir zamanda bakmaya çalışırım elbette ama son örnek belgede mevcut veri setine göre;
gerekirse aynı belgede, Imalat sayfasının birkaç kopyasını alıp elle yazarak birkaç çözüm alternatifi olsa iyi olurdu.
Böylece kodlama sırasında makronun süresini kısaltmaya yönelik sınırlandırmalar/istisnalar eklemek mümkün olabilir.
Yoksa;
"rastgele sayıları yaz, tek haneli sayı yazmadan sonuca ulaşılmışsa bu sayı grubunu alternatif çözüm seçeneği olarak başka bir alana listele"
şeklinde bir kod oluşturulabilir ama işlem uzun sürer ve sonuçlanacağının garantisi de olmaz.

İşlemi, denenecek sayıları sınırlandırıcı, önceki aşamaya tekrar dönmeyi engelleyici kuralların tanımlanması gerekir.

Belgeniz aklımda, merak etmeyin. Uygun zaman olduğunda yine bir şeyler yazmaya çalışırım.
Ancak aynı veri seti üzerinden birden fazla çözümün mümkün olduğunu görmem lazım.
Ki bu çözüm alternatiflerinin ortak noktasını yakalayıp kodlamayı yapmak daha doğru yol gibi görünüyor.

.
 
Akif Bey.
Eklediğiniz örnek belgeye baktım.
İşleyiş algoritmasını (aslında algoritma dediğimiz şey, yazılacak sayıları seçerken aklınızdan geçenlerin kodlanmış hali oluyor)
tam olarak anladığımı söyleyemem.
Tek (aynı) bir veri seti için, birden fazla çözüm yolu (sonuna kadar tüm sayıları içerecek şekilde) olduğunu sayısal olarak örneklendirmek lazım.

Sakin, uygun bir zamanda bakmaya çalışırım elbette ama son örnek belgede mevcut veri setine göre;
gerekirse aynı belgede, Imalat sayfasının birkaç kopyasını alıp elle yazarak birkaç çözüm alternatifi olsa iyi olurdu.
Böylece kodlama sırasında makronun süresini kısaltmaya yönelik sınırlandırmalar/istisnalar eklemek mümkün olabilir.
Yoksa;
"rastgele sayıları yaz, tek haneli sayı yazmadan sonuca ulaşılmışsa bu sayı grubunu alternatif çözüm seçeneği olarak başka bir alana listele"
şeklinde bir kod oluşturulabilir ama işlem uzun sürer ve sonuçlanacağının garantisi de olmaz.

İşlemi, denenecek sayıları sınırlandırıcı, önceki aşamaya tekrar dönmeyi engelleyici kuralların tanımlanması gerekir.

Belgeniz aklımda, merak etmeyin. Uygun zaman olduğunda yine bir şeyler yazmaya çalışırım.
Ancak aynı veri seti üzerinden birden fazla çözümün mümkün olduğunu görmem lazım.
Ki bu çözüm alternatiflerinin ortak noktasını yakalayıp kodlamayı yapmak daha doğru yol gibi görünüyor.

.
Merhaba Sayın BARAN konuya halen hakim olup destek çabanız için gönülden teşekkür ederim
hayatımda hiç yalan konuşmadım sizden dönüş olmayınca dosyayı farklı bir forumda paylaştım hiç sonuç alamadım
inanın optimizasyon konusunda umudumu yitirdim
aynı değerlerin üç farlı çözümünü görsel olarak hazırladım

geçtiğimiz hafta kısmende olsa iş yerim 3 gün çalıştı dosyayı gerçek değerler üzerinde deneme şansım oldu birkaç küçük problem ile karşılaştım
müsait olduğunuz da zaman ayırıp bakabilirseniz sevinirim
_ C18 C117 arasını toplu seçip sildiğinde 18 19 20 satırlarda gizleniyor
_12 satırda 4 hücre 113 hücre arasını seçip bildiğimde 114 115 116 yani DJ DK DL Sütunları da gizleniyor

_Sayfayı korumaya alıp çalıştığımda ( D 18 DI 117 ) (D 127 DI 131) (DO 18 DO 117 ) (DO 121 DO131) (DP 13) (DP 122) değer girip sildiğim de dosya hata veriyor korumayı kaldırıp çalışınca hiç bir hata yok
 
Ekli dosyalar
  • ScreenHunter_13 May. 17 13.09.webp
    ScreenHunter_13 May. 17 13.09.webp
    26.4 KB · Görüntüleme: 4
  • ScreenHunter_14 May. 17 13.23.webp
    ScreenHunter_14 May. 17 13.23.webp
    26.2 KB · Görüntüleme: 5
  • ScreenHunter_17 May. 17 13.44.webp
    ScreenHunter_17 May. 17 13.44.webp
    26.7 KB · Görüntüleme: 4
  • SON GÜNCEL DOSYA.xlsm
    SON GÜNCEL DOSYA.xlsm
    1.8 MB · Görüntüleme: 10
Akif Bey, konunun çözümünde mesafe katedilebilmesi bakımından;
son örnek belgenizdeki veriler üzerinden manuel oluşturduğunuz görseldeki örnek çözüm seçeneklerinin herbiri için ayrı ayrı;
ilk satırdan başlayarak DJ sütununa yazdığınız sayıları nasıl, neyi düşünerek, neye bakarak, neyleri karşılaştırarak tespit ettiğinize dair
satır satır açıklama yakmanız mümkün olursa, yaptığınız bu karşılaştırmaları makro koda yaptırmak,
baktığınız verilere makro kodunun bakmasını sağlamak gibi bir zihin jimnastiği yapabilir miyim diye ilgilenmek istiyorum.
Yani açıklamalarınızı kodlaştırmayı deneyeceğim, dolayısıyla seçeneklerdeki sayıları yazarken aklınızdan geçenleri ne kadar detaylı yazarsanız o kadar iyi olur.
Amacın;
14 ve 15'inci satırdaki verilerin eşitlenmesi olduğunu, ilgili satır D - DI sütunlarındaki sayıların toplamının 3-10 olabileceğini,
DJ sütununa tek basamaklı sayı yazılamayacağını biliyorum. Bunların dışında açıklama yazmanızı bekliyorum.

1590361903104.webp


.
 
Moderatörün son düzenlenenleri:
Geri
Üst