Makro ile nasıl yapabilirim?

Tasarım

Altın Üye
Katılım
3 Şubat 2005
Mesajlar
279
Excel Vers. ve Dili
Microsoft Excel 2013 32Bit Türkçe
Altın Üyelik Bitiş Tarihi
16-11-2025
Arkadaşlar ekte örneğini sunduğum sorunu makro ile nasıl aşabilirim? Yardımlarınızı bekliyorum.
 

Ekli dosyalar

Tasarım

Altın Üye
Katılım
3 Şubat 2005
Mesajlar
279
Excel Vers. ve Dili
Microsoft Excel 2013 32Bit Türkçe
Altın Üyelik Bitiş Tarihi
16-11-2025
Programın bu bölümünde takıldım kaldım arkadaşlar. Yardımlarınızı bekliyorum. :(
 

leumruk

Uzman
Uzman
Katılım
15 Nisan 2007
Mesajlar
3,471
Excel Vers. ve Dili
Office 2010 & 2013 tr
Kod:
Sub Yenile()
If Range("I1") = "İşlem Tamam" Then
MsgBox "Daha önce bu işlemi gerçekleştirmişsiniz. Tekrar yapmak için I1 hücresini boşaltınız."
Exit Sub
End If
For i = 1 To 52
If Cells(i, 3) = 3 Then Cells(i, 1) = Cells(i, 1) - 1
If Cells(i, 3) = 3 Then Cells(i, 2) = Cells(i, 2) - 1
If Cells(i, 3) < 3 Then Cells(i, 3) = Cells(i, 3) + 1
Range("I1") = "İşlem Tamam"
Next i
End Sub
Selamlar...
İstediğiniz eylem gerçekleşiyor. Yalnız şunu unutmayın: Her makroyu çalıştırmanızda eylem gerçekleşeceği için, önlem olarak Makroyu "I1" hücresine şartla bağladım. Yani Makroyu çalıştırdığınızda, "I1" hücresine "İşlem Tamam" şeklinde bir mesaj yazıyor. Bir daha çalıştırmak istediğinizde uyarı alıyorsunuz ve makro çalışmıyor. Eğer, "I3" hücresini boşaltırsanız makroyu yeniden çalıştırabilirsiniz.
Saygılar...
 

Ekli dosyalar

Tasarım

Altın Üye
Katılım
3 Şubat 2005
Mesajlar
279
Excel Vers. ve Dili
Microsoft Excel 2013 32Bit Türkçe
Altın Üyelik Bitiş Tarihi
16-11-2025
Kod:
Sub Yenile()
If Range("I1") = "İşlem Tamam" Then
MsgBox "Daha önce bu işlemi gerçekleştirmişsiniz. Tekrar yapmak için I1 hücresini boşaltınız."
Exit Sub
End If
For i = 1 To 52
If Cells(i, 3) = 3 Then Cells(i, 1) = Cells(i, 1) - 1
If Cells(i, 3) = 3 Then Cells(i, 2) = Cells(i, 2) - 1
If Cells(i, 3) < 3 Then Cells(i, 3) = Cells(i, 3) + 1
Range("I1") = "İşlem Tamam"
Next i
End Sub
Selamlar...
İstediğiniz eylem gerçekleşiyor. Yalnız şunu unutmayın: Her makroyu çalıştırmanızda eylem gerçekleşeceği için, önlem olarak Makroyu "I1" hücresine şartla bağladım. Yani Makroyu çalıştırdığınızda, "I1" hücresine "İşlem Tamam" şeklinde bir mesaj yazıyor. Bir daha çalıştırmak istediğinizde uyarı alıyorsunuz ve makro çalışmıyor. Eğer, "I3" hücresini boşaltırsanız makroyu yeniden çalıştırabilirsiniz.
Saygılar...
Yardımınız ve ilginiz için teşekkür ederim ancak; bazı sorunlar var.
1- Bir devlet memuru enfazla 1/4'e kadar yükselebilir.
Örnek: Kadro: 1 Derece: 1 Kademe: 4 ise başka yükselme şansı yoktur.
Sizin verdiğiniz örnekte kademe bölümü hiç değişmemekle beraber, diğer kadro ve derece bölümleri de eksi haneye düşüyor bu da mümkün değil. :)

Başka bu konuda yardımları olacak arkadaşlara şimdiden teşekkürler.
 
Katılım
19 Mart 2008
Mesajlar
76
Excel Vers. ve Dili
Excel 2003
Sn. Tasarım tam olarak ne işte kullanacaksın bende bununla ilgili bir kaç hazır excel formu var bende memur personel işlemleri ile uğraşan biriyim belki faydam dokunur iyi çalışmalar...
 

Tasarım

Altın Üye
Katılım
3 Şubat 2005
Mesajlar
279
Excel Vers. ve Dili
Microsoft Excel 2013 32Bit Türkçe
Altın Üyelik Bitiş Tarihi
16-11-2025
Sn. Tasarım tam olarak ne işte kullanacaksın bende bununla ilgili bir kaç hazır excel formu var bende memur personel işlemleri ile uğraşan biriyim belki faydam dokunur iyi çalışmalar...
Personel Takip Programı üzerinde çalışıyorum. Yıllık terfi listeleri çıkarmamız gerekiyor, bu listelerde de personelin yeni durumları olması gerekiyor. Yeni durumlarını makro ile yapmak istedim ama olmadı bu yüzden arkadaşlardan yardım istedim. Eğer elinizde örnek varsa eklerseniz incelemek isterim.
Teşekkürler
 

Tasarım

Altın Üye
Katılım
3 Şubat 2005
Mesajlar
279
Excel Vers. ve Dili
Microsoft Excel 2013 32Bit Türkçe
Altın Üyelik Bitiş Tarihi
16-11-2025
Ekli dosyayı kontrol ediniz...
İlginize ve desteğine teşekkür ederim ancak; gördüğüm bir hatayı buradan iletmek istedim. Personel Kadrosu:1, Derecesi:1, Kademesi:4 olduktan sonra ilerleme olmaz ve öylece kalır. Sizin hazırlamış olduğunuz makroda 0'a kadar düşüyor.
 
Katılım
17 Haziran 2006
Mesajlar
348
Excel Vers. ve Dili
2003 - TR / 2007 - TR
Açıklama:
Eğer C3 satırı 3 ise A3 ve B3 satırları birer basamak düşecek. Eğer 3'ten küçük ise A3 ve B3 satırları sabit kalarak C3'ün değeri 1 basamak artacak. Bunu Makro ile ve döngü olarak nasıl yapabilirim?

Daha iyi anlaşılabilmesi için bir örnek veriyorum.
Örneğin: Kadrosu 5, Derecesi 5 ve Kademesi 2 ise makro ile bunu Kadro:5, Derece:5, Kademe:3 şeklinde yapmak istiyorum. Eğer kademe 3 ise Kadro:4, Derece:4 ve Kademe:1 olacak şekilde nasıl yapabilirim.
Dosyanızda böyle bir açıklama görmediğim içindir.
6. mesajdaki dosya yenilendi... Kontrol ediniz...
 
Son düzenleme:

Tasarım

Altın Üye
Katılım
3 Şubat 2005
Mesajlar
279
Excel Vers. ve Dili
Microsoft Excel 2013 32Bit Türkçe
Altın Üyelik Bitiş Tarihi
16-11-2025
Arkadaşlar kademe bölümünü çözdüm ama derece bölümünde hala sorunum var. Derece bölümündeki değerler en fazla 1'e kadar düşmesi gerekiyor ama benim kodda bu değerler eksilere iniyor. Bunu nasıl çözebilirim? :(
 

Ekli dosyalar

Tasarım

Altın Üye
Katılım
3 Şubat 2005
Mesajlar
279
Excel Vers. ve Dili
Microsoft Excel 2013 32Bit Türkçe
Altın Üyelik Bitiş Tarihi
16-11-2025
Bu konuda kimsenin fikri yok demekki. Neyse herkesin canı sağolsun bizde projeden vazgeçeriz olur biter.:cry: :cry:
 
Üst