savasizgeneral
Altın Üye
- Katılım
- 14 Şubat 2008
- Mesajlar
- 35
- Excel Vers. ve Dili
- office 2003 türkçe
Aşağıdaki makro ile c sütununa yazılan rakamları dağıtıyorum fakat c sutununda 0 (sıfır) rakamı olunca makro hata veriyor, 0 (sıfır) gördüğü zaman sıfırları atlayıp diğer satırlardan devam etmesini istiyorum.
Teşekkürler.
Sub DAGITIM_BRN()
Set s1 = Sheets("MESAİ VE İZİNLER"): Set sd = Sheets("SAAT")
Set wf = Application.WorksheetFunction
For sat = 6 To s1.Cells(Rows.Count, "c").End(3).Row
dsat = s1.Cells(sat, "c") + 1
dadet = sd.Cells(s1.Cells(sat, "c") + 1, 256).End(1).Column - 1
nadet = wf.CountIf(s1.Range("D" & sat & ":AH" & sat), "N")
sekme = Int(nadet / dadet)
ilk = wf.Match("N", s1.Range("D" & sat & ":AH" & sat), 0) + 3: sayı = 0: dsut = 2
s1.Cells(sat, ilk) = sd.Cells(dsat, dsut)
For n = ilk + 2 To 34
If s1.Cells(sat, n) = "N" Then
sayı = sayı + 1
If sayı >= sekme Then
If dsut >= dadet + 1 Then GoTo 20
dsut = dsut + 1: s1.Cells(sat, n) = sd.Cells(dsat, dsut): sayı = 0
End If: End If: Next
20: Next
End Sub
Teşekkürler.
Sub DAGITIM_BRN()
Set s1 = Sheets("MESAİ VE İZİNLER"): Set sd = Sheets("SAAT")
Set wf = Application.WorksheetFunction
For sat = 6 To s1.Cells(Rows.Count, "c").End(3).Row
dsat = s1.Cells(sat, "c") + 1
dadet = sd.Cells(s1.Cells(sat, "c") + 1, 256).End(1).Column - 1
nadet = wf.CountIf(s1.Range("D" & sat & ":AH" & sat), "N")
sekme = Int(nadet / dadet)
ilk = wf.Match("N", s1.Range("D" & sat & ":AH" & sat), 0) + 3: sayı = 0: dsut = 2
s1.Cells(sat, ilk) = sd.Cells(dsat, dsut)
For n = ilk + 2 To 34
If s1.Cells(sat, n) = "N" Then
sayı = sayı + 1
If sayı >= sekme Then
If dsut >= dadet + 1 Then GoTo 20
dsut = dsut + 1: s1.Cells(sat, n) = sd.Cells(dsat, dsut): sayı = 0
End If: End If: Next
20: Next
End Sub