Merhaba arkadaşlar,
Yardımcı olmaya çalışanlara şimdiden teşekkürler. Sorum şu şekilde :
Hangi sıklıkla yapılacağını bildiğimiz işlerimiz var. Bu işler ve sıklıkları gönderdiğim örnek tabloda var. Tabloda da görebileceğiniz gibi İş1 13 günde bir, İş2 2 günde, iş3 5 günde bir yapılıyor.... Ama bu veriler bize az önce yazdığım gibi sayılarla verilmemiş de bir tabloya yerleştirilmiş "x"lerle gösterilmiş. Sıklıkları x'in bulunduğu sütuna bakarak anlayabiliyoruz.
Bizden istenen her satır için x'in bulunduğu yeri bulacak, sonra da yapılma sıklığına göre tablonun geri kalanına periodik olarak x'leri yerleştirecek bir macro.
Örnek tabloya bakarak sorumu çok daha rahat anlayabilirsiniz.
Ben tablodaki iş1 ve ilk günün kesiştiği kısmı (1,1)' e taşıyarak birşeyler yapmaya çalıştım ve şöyle birşey yazdım ama olmadı. Kodun sorununu da söyleyebilirseniz çok memnun olurum.
Sub Perioddd()
Dim i, j, k As Integer
For j = 1 To 7
For i = 1 To 31
If Cells(j, i) = "x" Then
k = i * 2
Do While k <= 31
Cells(j, k) = x
k = k * 2
Loop
End If
Next i
Next j
End Sub
Şunu da söyleyeyim asıl tablo bundan çok daha büyük yoksa sizi yormazdım.
Çok teşekkürler
Yardımcı olmaya çalışanlara şimdiden teşekkürler. Sorum şu şekilde :
Hangi sıklıkla yapılacağını bildiğimiz işlerimiz var. Bu işler ve sıklıkları gönderdiğim örnek tabloda var. Tabloda da görebileceğiniz gibi İş1 13 günde bir, İş2 2 günde, iş3 5 günde bir yapılıyor.... Ama bu veriler bize az önce yazdığım gibi sayılarla verilmemiş de bir tabloya yerleştirilmiş "x"lerle gösterilmiş. Sıklıkları x'in bulunduğu sütuna bakarak anlayabiliyoruz.
Bizden istenen her satır için x'in bulunduğu yeri bulacak, sonra da yapılma sıklığına göre tablonun geri kalanına periodik olarak x'leri yerleştirecek bir macro.
Örnek tabloya bakarak sorumu çok daha rahat anlayabilirsiniz.
Ben tablodaki iş1 ve ilk günün kesiştiği kısmı (1,1)' e taşıyarak birşeyler yapmaya çalıştım ve şöyle birşey yazdım ama olmadı. Kodun sorununu da söyleyebilirseniz çok memnun olurum.
Sub Perioddd()
Dim i, j, k As Integer
For j = 1 To 7
For i = 1 To 31
If Cells(j, i) = "x" Then
k = i * 2
Do While k <= 31
Cells(j, k) = x
k = k * 2
Loop
End If
Next i
Next j
End Sub
Şunu da söyleyeyim asıl tablo bundan çok daha büyük yoksa sizi yormazdım.
Çok teşekkürler