- Katılım
- 25 Eylül 2006
- Mesajlar
- 611
- Excel Vers. ve Dili
- Windows-XP_TR
Ofis-2003_TR
DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
=İNDİS(maliyetler!$A:$G;KAÇINCI(J$1;maliyetler!$A:$A;0);KAÇINCI($A2;maliyetler!$1:$1;0))
Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo Son
If Intersect(Target, [A2:A65536]) Is Nothing Then Exit Sub
If Target <> Empty Then
Target.Offset(0, 9) = Evaluate("=INDEX(maliyetler!A:G,MATCH(J1,maliyetler!A:A,0),MATCH(" & Target.Address & ",maliyetler!1:1,0))")
Target.Offset(0, 10) = Evaluate("=INDEX(maliyetler!A:G,MATCH(K1,maliyetler!A:A,0),MATCH(" & Target.Address & ",maliyetler!1:1,0))")
Target.Offset(0, 11) = Evaluate("=INDEX(maliyetler!A:G,MATCH(L1,maliyetler!A:A,0),MATCH(" & Target.Address & ",maliyetler!1:1,0))")
Target.Offset(0, 12) = Evaluate("=INDEX(maliyetler!A:G,MATCH(M1,maliyetler!A:A,0),MATCH(" & Target.Address & ",maliyetler!1:1,0))")
Else
Range("J" & Target.Row, "M" & Target.Row).ClearContents
End If
Son:
End Sub
Private Sub Worksheet_Activate()
Dim Satır As Long
On Error GoTo Son
If MsgBox("Hesaplamalar yeniden yapılsın mı?", vbYesNo + vbExclamation) = vbYes Then
Satır = Range("A65536").End(3).Row
Range("J2") = "=IF(ISERROR(INDEX(maliyetler!$A:$G,MATCH(J$1,maliyetler!$A:$A,0),MATCH($A2,maliyetler!$1:$1,0))),"""",INDEX(maliyetler!$A:$G,MATCH(J$1,maliyetler!$A:$A,0),MATCH($A2,maliyetler!$1:$1,0)))"
Range("K2") = "=IF(ISERROR(INDEX(maliyetler!$A:$G,MATCH(K$1,maliyetler!$A:$A,0),MATCH($A2,maliyetler!$1:$1,0))),"""",INDEX(maliyetler!$A:$G,MATCH(K$1,maliyetler!$A:$A,0),MATCH($A2,maliyetler!$1:$1,0)))"
Range("L2") = "=IF(ISERROR(INDEX(maliyetler!$A:$G,MATCH(L$1,maliyetler!$A:$A,0),MATCH($A2,maliyetler!$1:$1,0))),"""",INDEX(maliyetler!$A:$G,MATCH(L$1,maliyetler!$A:$A,0),MATCH($A2,maliyetler!$1:$1,0)))"
Range("M2") = "=IF(ISERROR(INDEX(maliyetler!$A:$G,MATCH(M$1,maliyetler!$A:$A,0),MATCH($A2,maliyetler!$1:$1,0))),"""",INDEX(maliyetler!$A:$G,MATCH(M$1,maliyetler!$A:$A,0),MATCH($A2,maliyetler!$1:$1,0)))"
Range("J2:M2").AutoFill Destination:=Range("J2:M" & Satır), Type:=xlFillDefault
Range("J2:M" & Satır).Value = Range("J2:M" & Satır).Value
MsgBox "Hesaplama işlemi tamamlanmıştır.", vbInformation
End If
Son:
End Sub