son satıra kadar döngü

Katılım
24 Ocak 2007
Mesajlar
27
Excel Vers. ve Dili
excel 2003
daha önce de bu sorunla ilgili bi başlık açmıştım ama artık son haline kadar geldim yapacağım şeyin. tek eksik son satıra kadar aynı işlemleri yapacak bir döngü. arkadaşlar yardımcı olmaya çalışmıştı fakat problem biraz daha genişledi.
ekte dosyayı ve ayrıntılı olarak sorunu anlattm. yardımcı olabilirseniz sevinirim.
 

zafer

Super Moderator
Yönetici
Katılım
8 Mart 2005
Mesajlar
3,288
Excel Vers. ve Dili
OFFICE 2003 TÜRKÇE
OFFICE 2010 TÜRKÇE
Merhaba

son satıra kadar aynı veriyi yazdır diyerek döngü kurulur.
Termin tarihi ve önerilen tarih sütunundaki satırlara aynı tarihmi yazılacak.sizin raporunuza göre öyle olduğunu zannetmiyorum onun için açıklamanızı biraz daha genişletebilirmisiniz.

O sütundaki satırlar neye göre tarih alacaklar.Ayrıca " uygun değilse yeni tarih verilecek" diye yazmışsınız.
bunların açıklamanız gerekir.
 
Katılım
24 Ocak 2007
Mesajlar
27
Excel Vers. ve Dili
excel 2003
her satırda aynı tarih yazmayacak. her satır için benim kod içerisinde yazdığım işlemler yapılacak ve her satırda yeni bir tarih belirlenip önerilen tarih kısmına yazacak.
uygun değilse yeni tarih verilecek demekle orada varolan bir termin tarihi varsa eğer ve benim stok seviyem bu termin tarihinde o siparişi göndermeye yetmeyorsa yeni bir tarih verilip önerilen tarih kısmına yazılacak.
bu kısımları zaten yaptım ben. sizden sadece bunu bir döngü haline getirip son satıra kadar bu işlemlerin yapılmasını sağlamanızı ve her satıra bir önerilen tarih gelmiş olmasını istiyorum. sormak istediğiniz başka birşey olursa lütfen sorun. teşekkürler..
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,435
Excel Vers. ve Dili
Ofis 365 Türkçe
Sayın priorix,

Ne yapmak istediğinizi anlamadım ama sizin örnekte 2. satırdan başlayıp son satıra kadar işlem yapan bir döngünün çatısını ekliyorum buraya.

Aradaki kodlar artık size ait :)

Kod:
Public Sub Dongu()
For i = 2 To [B65536].End(3).Row
 
 

Next i
End Sub
For ve Next arasına kodlarınızı yazabilirsiniz.
 
Katılım
24 Ocak 2007
Mesajlar
27
Excel Vers. ve Dili
excel 2003
Kod:
Private Sub CommandButton1_Click()
verim = [J2]
ihtiyac = [H2]
stok = [F2]
siparis = [G2]
müsisttarih = [D2]

Dim siptarih As Date
Dim önertarih As Date
Dim gün As Integer

gunsonu = stok + verim - siparis
gün = ihtiyac / verim
If gün > 0 Then
önertarih = DateAdd("d", 2, Date)

If &#246;nertarih < m&#252;sisttarih Then
[E2] = m&#252;sisttarih
Else
[E2] = &#246;nertarih
End If

Else
g&#252;n = g&#252;n * -1
&#246;nertarih = DateAdd("d", g&#252;n + 2, Date)

If &#246;nertarih < m&#252;sisttarih Then
[E2] = m&#252;sisttarih
Else
[E2] = &#246;nertarih
End If
End If

If &#246;nertarih > siptarih Then
Range("c2").Interior.Color = vbRed

Else
Range("c2").Interior.ColorIndex = xlNone
End If
End Sub

benim kodlar&#305;m bu &#351;ekilde. burda en ba&#351;ta tan&#305;mlad&#305;&#287;&#305;m verim=[J2] gibi &#351;eyleri nas&#305;l tan&#305;mlamam gerekiyor. b&#246;yle tan&#305;mlad&#305;&#287;&#305;mda alt sat&#305;r i&#231;in yapmayacak hep &#252;st sat&#305;rda buldu&#287;u de&#287;eri yazacak sanki???
 
Son düzenleme:
Katılım
24 Ocak 2007
Mesajlar
27
Excel Vers. ve Dili
excel 2003
tamm her&#351;eyi hallettim. d&#246;ng&#252;y&#252; offset kullanarak hallettim. ama &#351;imdi bi sorunum var.
Aktivecell olarak I3 se&#231;ildi. daha sonra i&#351;lemler ba&#351;l&#305;yo en sona da aktivecell.offset(1,0).select dedim. aktivecellim bi alt h&#252;cre oldu. ama &#351;imdi benm en ba&#351;ta I3&#252; se&#231;mi&#351; olmam gerekiyor. e&#287;er en ba&#351;a Range("I3").select dersem de d&#246;ng&#252;n&#252;n en ba&#351;&#305;nda hep I3&#252; se&#231;ecek ve olmayacak. en ba&#351;ta I^&#252; se&#231; demeden I3 den ba&#351;latman&#305;n bi yolu varm&#305;?
 
Üst