• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

dogrulama

Katılım
12 Nisan 2006
Mesajlar
33
aynı shett ıcerısınde yazdıgım bır rakamla dıger rakamın aynı olması durumunda satır renklerının aynı olmasını ıstıyorum yardımcı olabılırmısınız
tesekkur ederım
 
Katılım
1 Eylül 2007
Mesajlar
4
Excel Vers. ve Dili
office 2003 TR
EĞERSAY da birden fazla koşul

Değerli hocalarım;
Bir lojman nöbet listesi hazırlamak istiyorum ama çok çabalamama ve forumda uzun süre arama yapmama rağmen başaramadım. Konu daha önce verildi ise özür dilerim ama ben bulamadım.

Sıkıntım şu: Ekteki dosyada 1 no dan 13 no ya kadar lojman numaraları var.Nöbetler dörder saatlik olmak üzer sütunlarda belirtilmiştir. Koşullar:
1-) Aynı anda aynı kişi farklı yerlerde olamayacağından tek nöbeti olacak.(4 saatlik süreç içerisinde).Bunu =EĞERSAY(B:B,B4)=1 ile başardım ama ikinci ve üçüncü şartları entegre edemedim.
2-)Bir kişi bir günde (yani tüm sayfadaki hücrelerde) üçüncü kez nöbete yazılmayacak. Nöbet günde 2 kere.
3-) Bir kişi iki kez üst üste (örneğin 06:00-10:00 ile 10:00-14:00 nöbetlerinde) nöbete gitmeyecek.Ama 06:00-10:00 ile 14:00-18:00 nöbetine gidebilir.

Umarım derdimi anlatabilmişimdir. Dediğim gibi sadece birinciyi çözebildim ama yeterli olmadı. Benim için ciddi önem arzeden bir hadisedir. Yardımcı olmanızı rica ediyorum.
 
Katılım
6 Şubat 2005
Mesajlar
1,467
Doğrulamadaki formülü
=EĞERSAY(B:G;B2)=1
şeklinde değiştirin
 
Katılım
1 Eylül 2007
Mesajlar
4
Excel Vers. ve Dili
office 2003 TR
Omerceri teşekkür ederim ama sorumun cevabını almış değilim.
Ya da şu şekilde sorayım:
=EĞERSAY(B:B,B4)=1
=EĞERSAY(4:4,B4)=1
=EĞERSAY(B:G,B4)=1

Bu formulü excel sürümüme göre birisi birleştirebilir mi lütfen? Aralarına artı koydum olmadı.
(Ayrıca forumdaki formullerde (; ) ile ayraç kullanılmasına rağmen bendeki excel neden (,) kabul ediyor onu da anlayamadım. :S )
 
Katılım
6 Şubat 2005
Mesajlar
1,467
Başka koşullar da varmış, fark etmedim. Doğrulamayla zor gözüküyor, makro ile yapabilirsem
 
Katılım
6 Şubat 2005
Mesajlar
1,467
=YADA(EĞERSAY(B:B,B4)=1;EĞERSAY(4:4,B4)=1;EĞERSAY(B:G,B4)=1)
şeklinde birleştirebilinir ama çözüm olurmu denemek lazım.
 
Katılım
15 Haziran 2006
Mesajlar
3,704
Excel Vers. ve Dili
Excel 2003, 2007, 2010 (TR)
Sn.ömerçerinin formullerine ek veya alternatif olarak; aşağıdaki kodları;

İlgili sheet'in kod sayfasına kopyalayınız.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Target.Value = "" Then: Exit Sub
satir = Target.Row
sutun = Target.Column
[COLOR=green]'----- Bu bu kısımdaki kısıtı siz doğrulama yoluyla çözmüşsünüz -----------------
'      Eğer doğrulamadan vazgeçmek isterseniz, bunu kullanabilirsiniz -----------
'x = Application.WorksheetFunction.CountIf(Range(Cells(4, sutun), Cells(100, sutun)), Target.Value)
'If x > 1 Then
'  MsgBox "Bu kişi; aynı anda; iki farklı yerde olamaz", vbCritical, "Verilerinizi kontrol edin"
'  Application.EnableEvents = False
'  Target.Value = ""
'  Target.Select
'  Application.EnableEvents = True
'End If
'--------------------------------------------------------------------------------[/COLOR]
y = Application.WorksheetFunction.CountIf(Range(Cells(satir, 2), Cells(satir, 7)), Target.Value)
If y > 2 Then
  MsgBox "Bir kişi, aynı gün, üç nöbet tutamaz", vbCritical, "Fazla Nöbet"
  Application.EnableEvents = False
  Target.Value = ""
  Target.Select
  Application.EnableEvents = True
End If
If Target.Offset(0, -1).Value = Target.Value Or Target.Offset(0, 1).Value = Target.Value Then
  MsgBox "Bir kişi, üstüste iki defa nöbet tutamaz", vbCritical, "Üst Üste Nöbet"
  Application.EnableEvents = False
  Target.Value = ""
  Target.Select
  Application.EnableEvents = True
End If
End Sub
 
Katılım
1 Eylül 2007
Mesajlar
4
Excel Vers. ve Dili
office 2003 TR
Fpc hocam çok teşekkür ederim harika olmuş.Aradığım şey tam olarak buydu.
Yalnız şöyle bir durum var: Aynı satırda 3 nöbet yazarsam günde 3 nöbet tutulamayacağı uyarısını almama rağmen farklı satırlarda ayunı kişiye 4 nöbet yazılabiliyor. Bunu engellemem için ne gibi değişiklik yapmam lazım kodlarınızda?
Acemiliğimi mazur görün. Excel dünyasında yeniyim :=)
 
Katılım
15 Haziran 2006
Mesajlar
3,704
Excel Vers. ve Dili
Excel 2003, 2007, 2010 (TR)
Kod:
y = Application.WorksheetFunction.CountIf(Range(Cells(satir, 2), Cells(satir, 7)), Target.Value)
Yukarıdaki satırı, aşağıdaki gibi değiştirin ve deneyin, lütfen.

Kod:
y = Application.WorksheetFunction.CountIf(Range(Cells(4, 2), Cells(satir+50, 7)), Target.Value)
 
Katılım
1 Eylül 2007
Mesajlar
4
Excel Vers. ve Dili
office 2003 TR
İlginiz için teşekkürler.Gerçekten makbule geçti. İyi çalışmalar
 
Üst