Otomatik planlama kod revizesi

Soru Otomatik planlama kod revizesi

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

Akif59

Yıllık Forum Üyesi
Excel Versiyonu
Excel 2016
Excel Sürümü
64 Bit
Excel Dili
Türkçe
Merhaba
örnek dosyada 20 nolu satırda planla butonu ile çalışan modül birde bulunan Sub PLAN_FINAL_ANA_KUMAŞ() 'ANA KUMAŞ ASORTİ OTAMATİK PLAN KODU
isimli kodum var
bu kodun yapması gereken her bir kesim satırında en fazla 10 en az 3 seçenek bulacak değeri bulup DJ 122 den itibaren yukardan aşağı yazması şu an çalışıyor fakat bazı kesim satırlarında sadece 1 ve 2 seçenek bulup dj sütunu yazıyor ve bir sonraki kesim satırına geçiyor
 

Ekli dosyalar

  • Ekran görüntüsü 2020-11-22 164151.webp
    Ekran görüntüsü 2020-11-22 164151.webp
    31.1 KB · Görüntüleme: 7
Akif Bey.

Sanırım yanlış düşünmüyorum.
Seçenek derken kastınız; ilgili makro 1'den fazla kez çalıştırıldığında oluşan değerler dizisinin aynı olma durumu mudur?

Örneğin; kullanılan makro, mevcut verilere göre kaç seçenek buluyor denediniz mi acaba?

Yani mevcut verilere göre olan nedir, neyi arıyoruz?

.
 
Akif Bey.

Sanırım yanlış düşünmüyorum.
Seçenek derken kastınız; ilgili makro 1'den fazla kez çalıştırıldığında oluşan değerler dizisinin aynı olma durumu mudur?

Örneğin; kullanılan makro, mevcut verilere göre kaç seçenek buluyor denediniz mi acaba?

Yani mevcut verilere göre olan nedir, neyi arıyoruz?

.
Merhaba sayın BARAN
Dosya üzerinde kullanılan ifadeler anlaşılmamı zorlaştırdığı için başlık ve ifadeleri değiştirdim ve dosyayı tekrar ekledim
Planla butonu ile kod çalıştırıldığında

_Her bir koliye en az 3 en fazla 10 demet koymak istiyorum
amaç her koliye en yüksek kat maksimum demet sayısında ürün koymak

yani 18 ci satırdaki ürünleri en az koli ile yüklemek

İstenilen isimli Örnek dosyada
Koli 1 içine 548 lik 9 demet koydum
Koli 2 içine 352 lik 9 demet koydum
Koli 3 içine 135 lik 9 demet koydum
Koli 4 içine 92 lik 9 demet koydum
Koli 5 içine 38 lik 7 demet koydum
Koli 6 içine 24 lik 8 demet koydum
 

Ekli dosyalar

Merhaba sayın BARAN
Dosya üzerinde kullanılan ifadeler anlaşılmamı zorlaştırdığı için başlık ve ifadeleri değiştirdim ve dosyayı tekrar ekledim
Planla butonu ile kod çalıştırıldığında

_Her bir koliye en az 3 en fazla 10 demet koymak istiyorum
amaç her koliye en yüksek kat maksimum demet sayısında ürün koymak

yani 18 ci satırdaki ürünleri en az koli ile yüklemek

İstenilen isimli Örnek dosyada
Koli 1 içine 548 lik 9 demet koydum
Koli 2 içine 352 lik 9 demet koydum
Koli 3 içine 135 lik 9 demet koydum
Koli 4 içine 92 lik 9 demet koydum
Koli 5 içine 38 lik 7 demet koydum
Koli 6 içine 24 lik 8 demet koydum
@Ömer BARAN
Merhaba Sayın BARAN bakabildiniz mi?
 
Akif Bey, sorunuzu matematik sorusu olarak değil Excel sorusu olarak sorarsanız bence daha iyi.
İsteğinizi, sonuçta ulaşılmak istenileni anlamıyor değilim.
Mesele bu isteğin (amaçlanan nihai sonucun) ne olduğunu anlamamak değil,
Excel açısından çözümün nasıl elde edileceği.

Herneyse; son belgeleri ilk eklediğinizde (yanlış hatırlamıyorsam) önyargıyı bir kenara bırakıp,
belgeye yeni bakıyormuş gibi düşünürek (Mevlana'nın dediği gibi: "şimdi yeni şeyler söylemek lazım")
aşağıdaki değişikliği düşünmüştüm. Bunu bir dener misiniz?

PLANLAMA kodunda aşağıdaki kırmızı satırın yerine yeşil olanı ekleyin ve bundan sonra kodu tekrar ve tekrar çalıştırın.
Çünkü her çaıştırmada farklı kombinasyon oluşacak.

Tamamen fikir jimnastiği olarak düşünüyorum:
kodu defalarca çalıştırdığınızda oluşan liste seçeneklerini başka bir alanda tutsak (deneme adeti sınırı koyarak elbette)
ve sonra bunlardan belli bir kritere göre (işte kriter nedir sorusu cevaplamak lazım) örneğin;
-- en az satıra veri yazan,
-- toplamı en az/çok olan,
-- standart sapması en düşük (ortalamadan sapmaların karelerinin toplamı en olan) olan (homojen dağılım)
vs.vs
gibi bir kritere göre en uygun seçeneği SEÇSEK diyorum.

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

.
 
Akif Bey, sorunuzu matematik sorusu olarak değil Excel sorusu olarak sorarsanız bence daha iyi.
İsteğinizi, sonuçta ulaşılmak istenileni anlamıyor değilim.
Mesele bu isteğin (amaçlanan nihai sonucun) ne olduğunu anlamamak değil,
Excel açısından çözümün nasıl elde edileceği.

Herneyse; son belgeleri ilk eklediğinizde (yanlış hatırlamıyorsam) önyargıyı bir kenara bırakıp,
belgeye yeni bakıyormuş gibi düşünürek (Mevlana'nın dediği gibi: "şimdi yeni şeyler söylemek lazım")
aşağıdaki değişikliği düşünmüştüm. Bunu bir dener misiniz?

PLANLAMA kodunda aşağıdaki kırmızı satırın yerine yeşil olanı ekleyin ve bundan sonra kodu tekrar ve tekrar çalıştırın.
Çünkü her çaıştırmada farklı kombinasyon oluşacak.

Tamamen fikir jimnastiği olarak düşünüyorum:
kodu defalarca çalıştırdığınızda oluşan liste seçeneklerini başka bir alanda tutsak (deneme adeti sınırı koyarak elbette)
ve sonra bunlardan belli bir kritere göre (işte kriter nedir sorusu cevaplamak lazım) örneğin;
-- en az satıra veri yazan,
-- toplamı en az/çok olan,
-- standart sapması en düşük (ortalamadan sapmaların karelerinin toplamı en olan) olan (homojen dağılım)
vs.vs
gibi bir kritere göre en uygun seçeneği SEÇSEK diyorum.

VBA:
Görüntülemek için giriş yapmanız gerekmektedir.
(4 satır)
VBA:
Görüntülemek için giriş yapmanız gerekmektedir.
(1 satır)
Akif Bey, sorunuzu matematik sorusu olarak değil Excel sorusu olarak sorarsanız bence daha iyi.
İsteğinizi, sonuçta ulaşılmak istenileni anlamıyor değilim.
Mesele bu isteğin (amaçlanan nihai sonucun) ne olduğunu anlamamak değil,
Excel açısından çözümün nasıl elde edileceği.

Herneyse; son belgeleri ilk eklediğinizde (yanlış hatırlamıyorsam) önyargıyı bir kenara bırakıp,
belgeye yeni bakıyormuş gibi düşünürek (Mevlana'nın dediği gibi: "şimdi yeni şeyler söylemek lazım")
aşağıdaki değişikliği düşünmüştüm. Bunu bir dener misiniz?

PLANLAMA kodunda aşağıdaki kırmızı satırın yerine yeşil olanı ekleyin ve bundan sonra kodu tekrar ve tekrar çalıştırın.
Çünkü her çaıştırmada farklı kombinasyon oluşacak.

Tamamen fikir jimnastiği olarak düşünüyorum:
kodu defalarca çalıştırdığınızda oluşan liste seçeneklerini başka bir alanda tutsak (deneme adeti sınırı koyarak elbette)
ve sonra bunlardan belli bir kritere göre (işte kriter nedir sorusu cevaplamak lazım) örneğin;
-- en az satıra veri yazan,
-- toplamı en az/çok olan,
-- standart sapması en düşük (ortalamadan sapmaların karelerinin toplamı en olan) olan (homojen dağılım)
vs.vs
gibi bir kritere göre en uygun seçeneği SEÇSEK diyorum.

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

.
Sayın BARAN Merhaba
maalesef olmadı yine son kolilere bir demet koydu
Change kodunun içindeki 'ANA KUMAŞ HESAP KODLARI larını iptal ederek bir çözüm üretmemiz gerekiyor gibi geliyor bana
çünkü mevcut kodumuz DJ Sütununa kat sayısını belirleyip yazdığında yada DJ Sütununa manuel giriş yaptığımızda bu kodlar çalışıyor
3 nolu mesajımda eklediğim istenilen isimli örnek dosyada DJ Sütunundaki değerleri hepsini el ile girdim istediğim sonuca ulaştım
 
Akif Bey, sorunuzu matematik sorusu olarak değil Excel sorusu olarak sorarsanız bence daha iyi.
İsteğinizi, sonuçta ulaşılmak istenileni anlamıyor değilim.
Mesele bu isteğin (amaçlanan nihai sonucun) ne olduğunu anlamamak değil,
Excel açısından çözümün nasıl elde edileceği.

Herneyse; son belgeleri ilk eklediğinizde (yanlış hatırlamıyorsam) önyargıyı bir kenara bırakıp,
belgeye yeni bakıyormuş gibi düşünürek (Mevlana'nın dediği gibi: "şimdi yeni şeyler söylemek lazım")
aşağıdaki değişikliği düşünmüştüm. Bunu bir dener misiniz?

PLANLAMA kodunda aşağıdaki kırmızı satırın yerine yeşil olanı ekleyin ve bundan sonra kodu tekrar ve tekrar çalıştırın.
Çünkü her çaıştırmada farklı kombinasyon oluşacak.

Tamamen fikir jimnastiği olarak düşünüyorum:
kodu defalarca çalıştırdığınızda oluşan liste seçeneklerini başka bir alanda tutsak (deneme adeti sınırı koyarak elbette)
ve sonra bunlardan belli bir kritere göre (işte kriter nedir sorusu cevaplamak lazım) örneğin;
-- en az satıra veri yazan,
-- toplamı en az/çok olan,
-- standart sapması en düşük (ortalamadan sapmaların karelerinin toplamı en olan) olan (homojen dağılım)
vs.vs
gibi bir kritere göre en uygun seçeneği SEÇSEK diyorum.

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

.
Merhaba Sayın BARAN
düşünceniz çok mantıklı kodu bir defa biz çalıştırsak sonra kendisi defalarca çalışıp farklı seçenekler oluştursa bu seçeneklerden en satıra veri yazan ve her satırda en az 3 en fazla 10 veri olanı dosyamıza yazdırabilir miyiz
 
Daha evvel de birkaç kez yazmama rağmen bir türlü beklediğim cevabı alamadığım soruyu tekrar sorarak en başa döneyim.

Sabit bir veri seti üzerinden (içinde mutlaka en az 2 adet ASAL SAYI olsun) elle yazarak bulduğunuz nihai sonuç listesini değil de;
üşenmeyip, yazdığınız her değeri tek tek ve sırayla belirtip o sayıyı yazmaya nasıl karar verdiğinizi,
veri siliyorsanız neden sildiğinizi, hiçbir adımı atlamadan ve işlem sırasına göre (uzun da olsa) yazmanızı tekrar isteyeceğim.

Aynı veri seti üzerinden 1'den fazla çözüm buluyorsanız bu çözüm seçeneklerinin herbiri için yine yukarıda belirttiğim gibi
alanın boş halinden başlayıp, hiçbir ayrıntıyı atlamadan sonuç aşamasına kadar her işlem adımını (yazma/silme, hangi sayının nereye yazıldığı. hang sayının neden silindiği gibi) yazmalısınız.

Örneğin alanda (üstte sıfırlanmaya çalışılan sayılardan en az 2'sinin) diyelim 19, 67, 191 gibi ASAL SAYI olmasında yarar var gibi geliyor bana. Asal sayının varlığının çözümü nasıl etkilediğini görmek faydalı olur.
Bu tür sayıların varlığı halinde bulduğunuz çözüme dair yazacağınız açıklamaların, kodlamada izlenecek yol bakımından faydalı olacağını düşünüyorum.
 
Daha evvel de birkaç kez yazmama rağmen bir türlü beklediğim cevabı alamadığım soruyu tekrar sorarak en başa döneyim.

Sabit bir veri seti üzerinden (içinde mutlaka en az 2 adet ASAL SAYI olsun) elle yazarak bulduğunuz nihai sonuç listesini değil de;
üşenmeyip, yazdığınız her değeri tek tek ve sırayla belirtip o sayıyı yazmaya nasıl karar verdiğinizi,
veri siliyorsanız neden sildiğinizi, hiçbir adımı atlamadan ve işlem sırasına göre (uzun da olsa) yazmanızı tekrar isteyeceğim.

Aynı veri seti üzerinden 1'den fazla çözüm buluyorsanız bu çözüm seçeneklerinin herbiri için yine yukarıda belirttiğim gibi
alanın boş halinden başlayıp, hiçbir ayrıntıyı atlamadan sonuç aşamasına kadar her işlem adımını (yazma/silme, hangi sayının nereye yazıldığı. hang sayının neden silindiği gibi) yazmalısınız.

Örneğin alanda (üstte sıfırlanmaya çalışılan sayılardan en az 2'sinin) diyelim 19, 67, 191 gibi ASAL SAYI olmasında yarar var gibi geliyor bana. Asal sayının varlığının çözümü nasıl etkilediğini görmek faydalı olur.
Bu tür sayıların varlığı halinde bulduğunuz çözüme dair yazacağınız açıklamaların, kodlamada izlenecek yol bakımından faydalı olacağını düşünüyorum.
Merhaba Sayın BARAN
Manuel İzlediğim yolu dilim döndüğünce dosyanın içinde anlatmaya çalıştım.
 

Ekli dosyalar

Kaçıncı kez sorduğumu hatırlamıyorum ama yine soracağım.
İlk satır için 718'i, ikinci satırda kalanlar arasından 548'i, üçüncü satırda kalanlar arasından 352'yi ....
nasıl seçtiğinizi öğrenmeye çalışıyorum.

Örneğin;
-- ilk satır için, 718'i seçerken neyi dikkate alıyorsunuz (6'ncı büyük olduğu için, rakamlarının toplamı diğerlerine göre şöyle olduğu için, sayının 1'ler basamağındaki rakamı şu rakam omaktan çıkartmak için, şu sayıdan şunu çıkartırsam kalan değer diğer sütundaki şuna yaklaşacağı için, ..... esprili söylersem gözünün üstünde kaşı olduğu için vs KARAR VERME SIRASINDA aklınızdan geçeni öğrenmeye çalışıyorum).
-- benzer sorular ikinci satırdaki 548 seçimi için de geçerli, sırayla diğerleri için de elbette.

Karar verme sırasında neye göre hareket ettiğinizi anlarsam ve bunun matematiksel/mantıksal karşılığı kodlanabilir mi diye bakacağım.
Yoksa havanda su dövmeye devam edilir ve nihai sonuca ulaşmak mümkün olmaz.

.
 
Kaçıncı kez sorduğumu hatırlamıyorum ama yine soracağım.
İlk satır için 718'i, ikinci satırda kalanlar arasından 548'i, üçüncü satırda kalanlar arasından 352'yi ....
nasıl seçtiğinizi öğrenmeye çalışıyorum.

Örneğin;
-- ilk satır için, 718'i seçerken neyi dikkate alıyorsunuz (6'ncı büyük olduğu için, rakamlarının toplamı diğerlerine göre şöyle olduğu için, sayının 1'ler basamağındaki rakamı şu rakam omaktan çıkartmak için, şu sayıdan şunu çıkartırsam kalan değer diğer sütundaki şuna yaklaşacağı için, ..... esprili söylersem gözünün üstünde kaşı olduğu için vs KARAR VERME SIRASINDA aklınızdan geçeni öğrenmeye çalışıyorum).
-- benzer sorular ikinci satırdaki 548 seçimi için de geçerli, sırayla diğerleri için de elbette.

Karar verme sırasında neye göre hareket ettiğinizi anlarsam ve bunun matematiksel/mantıksal karşılığı kodlanabilir mi diye bakacağım.
Yoksa havanda su dövmeye devam edilir ve nihai sonuca ulaşmak mümkün olmaz.

.
Merhaba sayın BARAN
Sizi anlıyorum son sorduklarınızı da dosyada cevaplamaya çalıştım
 

Ekli dosyalar

Üst