DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
peki üstadım. biraz karışık olduğunun farkındayım. dilimin döndüğü kadarı ile anlatayım.Maalesef dosyanızdan ne yapmaya çalıştığınız anlaşılmıyor. Hangi veri hangi hücreye neye göre gelecek anlayamadım. Konuyu hiç bilmeyen bizim gözümüzle incelerseniz siz de bu durumu görebilirsiniz.
Daha açık bir anlatım yapıp, hangi hücreye hangi verinin neye göre gelmesi gerektiğini belirtmenizi tavsiye ederim.
Sub siparisler()
Set s1 = Sheets("Sayfa2")
Set s2 = Sheets("Sayfa3")
s2.[F1:AZ1000].ClearContents
son = WorksheetFunction.Max(s1.Cells(Rows.Count, "B").End(3).Row, 5)
gr = s2.[B2]
sk = s2.[B3]
If gr = "" Or sk = "" Then
MsgBox "Lütfen Gramaz ve Sıklık Değerlerini kaydettikten sonra makroyu tekrar çalıştırınız!", vbInformation
Exit Sub
End If
Application.ScreenUpdating = False
For i = 5 To son
If s1.Cells(i, "F") = gr And s1.Cells(i, "G") = sk Then
yeni = s2.Cells(1, Columns.Count).End(xlToLeft).Column + 1
s2.Cells(1, yeni) = s1.Cells(i, "B")
s2.Cells(2, yeni) = s1.Cells(i, "C")
s2.Cells(3, yeni) = s1.Cells(i, "D")
s2.Cells(5, yeni) = s1.Cells(i, "E")
s2.Cells(7, yeni) = s1.Cells(i, "H")
s2.Cells(8, yeni) = s1.Cells(i, "I")
s2.Cells(9, yeni) = s1.Cells(i, "J")
s2.Cells(10, yeni) = s1.Cells(i, "K")
End If
Next
Application.ScreenUpdating = True
End Sub
öncelikle emeğiniz için teşekkür ederim, ama bizde macro çalıştıramıyoruz. wps programının ücretsiz versiyonunu kullanıyoruz. formül ile yapabileceğimiz bir yolu var ise çok makbule geçer. teşekkür ederim.Aşağıdaki makroyu bir modüle kopyalayıp deneyiniz:
PHP:Sub siparisler() Set s1 = Sheets("Sayfa2") Set s2 = Sheets("Sayfa3") s2.[F1:AZ1000].ClearContents son = WorksheetFunction.Max(s1.Cells(Rows.Count, "B").End(3).Row, 5) gr = s2.[B2] sk = s2.[B3] If gr = "" Or sk = "" Then MsgBox "Lütfen Gramaz ve Sıklık Değerlerini kaydettikten sonra makroyu tekrar çalıştırınız!", vbInformation Exit Sub End If Application.ScreenUpdating = False For i = 5 To son If s1.Cells(i, "F") = gr And s1.Cells(i, "G") = sk Then yeni = s2.Cells(1, Columns.Count).End(xlToLeft).Column + 1 s2.Cells(1, yeni) = s1.Cells(i, "B") s2.Cells(2, yeni) = s1.Cells(i, "C") s2.Cells(3, yeni) = s1.Cells(i, "D") s2.Cells(5, yeni) = s1.Cells(i, "E") s2.Cells(7, yeni) = s1.Cells(i, "H") s2.Cells(8, yeni) = s1.Cells(i, "I") s2.Cells(9, yeni) = s1.Cells(i, "J") s2.Cells(10, yeni) = s1.Cells(i, "K") End If Next Application.ScreenUpdating = True End Sub
ZAHMETLİ OLDUM TEŞEKKÜR EDERİM.Formülle yapılır muhtemelen ama ben nasıl olur bilmiyorum. Ayrıca yapılabileceğini düşündüğüm "dizi formülünün" bahsettiğiniz WPS programında düzgün çalışıp çalışmayacağını da bilmiyorum maalesef.