TARGET OLAYINDA SEÇENEK SAYISI

cocoa35

Altın Üye
Katılım
6 Eylül 2007
Mesajlar
652
Excel Vers. ve Dili
excel 2016 32 Bit ve Excel 2020 32 Bit Türkçe ve İngilizce
Altın Üyelik Bitiş Tarihi
10-12-2024
Arkadaşlar merhaba, aşağıda vermiş olduğum kod'larda hücre içindeki formül yanlışlıkla silindiğinde boş bırakılan hücreye formülü otomatik olarak geriye geliyor. Ancak hücre sayısı fazla olduğu için aşağıdaki kod'larda belirli sayıda hücreyi kabul ediyor. Burda hücre sayısını artırmak için ne yapmalıyız. " 'If " olanları kabul etmiyor.

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("N8,N26,N41,N42,N43,N47,N136,N147,N148,N153,N163,C164,N201,N212,N216,N292,N297,N300,N318,N322,N323,N334,N336,N342,N382,N383,N384,N385,N386,N387,N388,N389,N390,N391,L391,N402,N411,N415,L415,N462,N471,N472,N473,N474,N479,N480,N486,N487,N488,N489,N490,N491")) Is Nothing Then Exit Sub
Application.EnableEvents = False
If Range("N8") = "" Then Range("N8").FormulaLocal = "='BİRİM FİYATLAR'!H61*K4"
If Range("N26") = "" Then Range("N26").FormulaLocal = "=(((C30*10)*E26)/33)*K4"
If Range("N41") = "" Then Range("N41").FormulaLocal = "=(ARA(C54;VERI!J149:J187;VERI!U149:U187))*K4"
If Range("N42") = "" Then Range("N42").FormulaLocal = "=(ARA('MEKANİK HESAPLAR'!C54;VERI!H191:H213;VERI!J191:J213))*K4"
If Range("N43") = "" Then Range("N43").FormulaLocal = "=(ARA('MEKANİK HESAPLAR'!G43;VERI!D75:D100;VERI!E75:E100))*K4"
If Range("N47") = "" Then Range("N47").FormulaLocal = "=(DÜŞEYARA(I47;DONE!B195:C201;2;DOĞRU))*K4"
If Range("N136") = "" Then Range("N136").FormulaLocal = "=(DÜŞEYARA('MEKANİK HESAPLAR'!F136;DONE!B182:N189;13;DOĞRU)*DOVIZ!F14)*K4"
If Range("N147") = "" Then Range("N147").FormulaLocal = "=(ARA(F147;VERI!L271:L291;VERI!N271:N291))*K4"
If Range("N148") = "" Then Range("N148").FormulaLocal = "=((11500/6,2)*DOVIZ2!E7)*K4"
If Range("N153") = "" Then Range("N153").FormulaLocal = "=(N148*0,65)*K4"
If Range("N163") = "" Then Range("N163").FormulaLocal = "=(DÜŞEYARA(F163;KOD!C139:Q157;15;DOĞRU)*DOVIZ!F14)*K4"
If Range("C164") = "" Then Range("C164").FormulaLocal = "='PROSES HESAPLARI'!C683"
If Range("N201") = "" Then Range("N201").FormulaLocal = "=(DÜŞEYARA(F201;DONE!B$182:N$189;13;1)*DOVIZ!F14)*K4"
If Range("N212") = "" Then Range("N212").FormulaLocal = "=3600*DOVIZ!C14*K4"
If Range("N216") = "" Then Range("N216").FormulaLocal = "=(DÜŞEYARA(G216;BAY.BAK!C:F;4;0))*K4"
If Range("N292") = "" Then Range("N292").FormulaLocal = "=(DÜŞEYARA(F292;DONE!B204:C214;2;1)*DOVIZ!F14)*K4"
If Range("N297") = "" Then Range("N297").FormulaLocal = "=(DÜŞEYARA(F297;DONE!B204:C214;2;1)*DOVIZ!F14)*K4"
If Range("N300") = "" Then Range("N300").FormulaLocal = "=(DÜŞEYARA(F300;DONE!G204:J212;4;1))*K4"
If Range("N318") = "" Then Range("N318").FormulaLocal = "=(EĞER(A318=1;ARA(F318;KOD!D439:D450;KOD!T439:T450)*DOVIZ!F14;DÜŞEYARA(C318;KOD!C455:U458;18;DOĞRU)*DOVIZ!F14))*K4"
If Range("N322") = "" Then Range("N322").FormulaLocal = "=VERI!I385*K4"
If Range("N323") = "" Then Range("N323").FormulaLocal = "=VERI!Q385*K4"
If Range("N334") = "" Then Range("N334").FormulaLocal = "=VERI!Q400*K4"
If Range("N336") = "" Then Range("N336").FormulaLocal = "=VERI!Q416*K4"
If Range("N342") = "" Then Range("N342").FormulaLocal = "=N336"
If Range("N382") = "" Then Range("N382").FormulaLocal = "=(ARA(F382;VERI!J$149:J$187;VERI!U$149:U$187))*K4"
If Range("N383") = "" Then Range("N383").FormulaLocal = "=(ARA(F383;VERI!J$149:J$187;VERI!U$149:U$187))*K4"
If Range("N384") = "" Then Range("N384").FormulaLocal = "=(ARA(F384;VERI!J$149:J$187;VERI!U$149:U$187))*K4"
If Range("N385") = "" Then Range("N385").FormulaLocal = "=(ARA(F385;VERI!J$149:J$187;VERI!U$149:U$187))*K4"
If Range("N386") = "" Then Range("N386").FormulaLocal = "=(DÜŞEYARA(F386;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7)*K4"
If Range("N387") = "" Then Range("N387").FormulaLocal = "=(DÜŞEYARA(F387;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7)*K4"
If Range("N388") = "" Then Range("N388").FormulaLocal = "=(DÜŞEYARA(F388;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7)*K4"
If Range("N389") = "" Then Range("N389").FormulaLocal = "=(DÜŞEYARA(F389;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7)*K4"
If Range("N390") = "" Then Range("N390").FormulaLocal = "=(DÜŞEYARA(F390;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7)*K4"
If Range("N391") = "" Then Range("N391").FormulaLocal = "=(DÜŞEYARA(F391;VERI!D492:L516;9;1)*DOVIZ!C14)*K4"
If Range("L391") = "" Then Range("L391").FormulaLocal = "='PROSES HESAPLARI'!C2491"
If Range("N402") = "" Then Range("N402").FormulaLocal = "=(DÜŞEYARA(F402;VERI!B452:C490;2;DOĞRU)*DOVIZ!C7)*K4"
If Range("N411") = "" Then Range("N411").FormulaLocal = "=(DÜŞEYARA(F411;KOD!B873:K886;10;DOĞRU)*DOVIZ!F14)*K4"
If Range("N415") = "" Then Range("N415").FormulaLocal = "=(DÜŞEYARA(F415;VERI!L521:M530;2;1)*DOVIZ!F14)*K4"
If Range("L415") = "" Then Range("L415").FormulaLocal = "=EĞER(DONE!F16=2;'PROSES HESAPLARI'!C2804;0)"
If Range("N462") = "" Then Range("N462").FormulaLocal = "=DÜŞEYARA(F462;VERI!B452:C490;2;1)*DOVIZ!F7*K4"
If Range("N471") = "" Then Range("N471").FormulaLocal = "=DÜŞEYARA(F471;KOD!B873:K886;10;DOĞRU)*DOVIZ!F14*K4"
If Range("N472") = "" Then Range("N472").FormulaLocal = "=ARA(F472;VERI!J$149:J$187;VERI!U$149:U$187)*K4"
If Range("N473") = "" Then Range("N473").FormulaLocal = "=ARA(F473;VERI!J$149:J$187;VERI!U$149:U$187)*K4"
If Range("N474") = "" Then Range("N474").FormulaLocal = "=DÜŞEYARA(F474;VERI!B452:C490;2;DOĞRU)*DOVIZ!F7*2,67*K4"
If Range("N479") = "" Then Range("N479").FormulaLocal = "=ARA(F479;VERI!J$149:J$187;VERI!U$149:U$187)*K4"
If Range("N480") = "" Then Range("N480").FormulaLocal = "=DÜŞEYARA(F480;VERI!D$492:L$516;9;1)*DOVIZ!C$14*K4"
If Range("N486") = "" Then Range("N486").FormulaLocal = "=DÜŞEYARA(F486;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7*K4"
If Range("N487") = "" Then Range("N487").FormulaLocal = "=DÜŞEYARA(F487;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7*K4"
If Range("N488") = "" Then Range("N488").FormulaLocal = "=DÜŞEYARA(F488;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7*K4"
If Range("N489") = "" Then Range("N489").FormulaLocal = "=DÜŞEYARA(F489;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7*K4"
If Range("N490") = "" Then Range("N490").FormulaLocal = "=DÜŞEYARA(F490;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7*K4"
If Range("N491") = "" Then Range("N491").FormulaLocal = "=DÜŞEYARA(F491;VERI!D$492:L$516;9;1)*DOVIZ!C$14*K4"
'If Range("N492") = "" Then Range("N492").FormulaLocal = "=DÜŞEYARA(F492;VERI!D$492:L$516;9;1)*DOVIZ!C$14*K4"
'If Range("N501") = "" Then Range("N501").FormulaLocal = "=(EĞER(A501=1;ARA(F501;KOD!C574:C582;KOD!AF574:AF582);ARA(F501;KOD!C586:C603;KOD!O586:O603))*DOVIZ!F14)*K4"
'If Range("N502") = "" Then Range("N502").FormulaLocal = "=EĞER(A501=1;515,87;354,78)*DOVIZ!F14*K4"
'If Range("N503") = "" Then Range("N503").FormulaLocal = "=(EĞER('PROSES HESAPLARI'!H3832='PROSES HESAPLARI'!H3834;ARA('MEKANİK HESAPLAR'!F503;KOD!AH574:AH582;KOD!AG574:AG582);ARA(F503;KOD!E609:E624;KOD!L609:L624))*DOVIZ!F14)*K4"
'If Range("N504") = "" Then Range("N504").FormulaLocal = "=DÜŞEYARA(F504;KOD!L718:T728;9;1)*DOVIZ!F14*K4"
'If Range("N505") = "" Then Range("N505").FormulaLocal = "=DÜŞEYARA(F505;KOD!L718:U728;10;1)*DOVIZ!F14*K4"
'If Range("N506") = "" Then Range("N506").FormulaLocal = "=DÜŞEYARA(F506;KOD!L718:V728;11;1)*DOVIZ!F14*K4"
'If Range("N507") = "" Then Range("N507").FormulaLocal = "=DÜŞEYARA(F507;KOD!L718:T728;9;1)*DOVIZ!F14*K4"
'If Range("N508") = "" Then Range("N508").FormulaLocal = "=DÜŞEYARA(F508;KOD!L718:T728;9;1)*DOVIZ!F14*1,5*K4"
'If Range("N509") = "" Then Range("N509").FormulaLocal = "=DÜŞEYARA(F509;KOD!B716:K730;10;1)*DOVIZ!F14*K4"
'If Range("N510") = "" Then Range("N510").FormulaLocal = "=DÜŞEYARA(F510;VERI!B$452:C$490;2;DOĞRU)*DOVIZ!F$7*K4"
'If Range("N511") = "" Then Range("N511").FormulaLocal = "=(EĞER('PROSES HESAPLARI'!H3832='PROSES HESAPLARI'!H3834;ARA(F511;KOD!AH574:AH582;KOD!AG574:AG582);ARA(F511;KOD!E609:E624;KOD!L609:L624))*DOVIZ!F14)*K4"
'If Range("N512") = "" Then Range("N512").FormulaLocal = "=DÜŞEYARA(F512;KOD!C630:K643;9;1)*DOVIZ!F14*K4"
'If Range("N541") = "" Then Range("N541").FormulaLocal = "=DÜŞEYARA(F541;VERI!D$492:L$516;9;1)*DOVIZ!C$14*K4"
'If Range("N542") = "" Then Range("N542").FormulaLocal = "=VERI!AG385*K4"
'If Range("N543") = "" Then Range("N543").FormulaLocal = "=VERI!AG398*K4"
'If Range("N544") = "" Then Range("N544").FormulaLocal = "=VERI!Q400*K4"
'If Range("N546") = "" Then Range("N546").FormulaLocal = "=DÜŞEYARA(F546;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7*K4"




Application.EnableEvents = True

End Sub
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
5,806
Excel Vers. ve Dili
2019 Türkçe
Merhaba.
Aşağıdaki gibi yapabilirsiniz.
Diğer hücre adreslerini de siz girersiniz.
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Bak As Range
    If Not Intersect(Target, Range("N8,N26,N41,N42,N43,N47,N136,N147,N148,N153,N163,C164,N201,N212,N216,N292,N297,N300,N318,N322,N323,N334,N336,N342,N382,N383,N384,N385,N386,N387,N388,N389,N390,N391,L391,N402,N411,N415,L415,N462,N471,N472,N473,N474,N479,N480,N486,N487,N488,N489,N490,N491")) Is Nothing Then
        Application.EnableEvents = False
        For Each Bak In Target
            Select Case Replace(Bak.Address, "$", "")
                Case "N8"
                    Range("N8").FormulaLocal = "='BİRİM FİYATLAR'!H61*K4"
                Case "N26"
                    Range("N26").FormulaLocal = "=(((C30*10)*E26)/33)*K4"
                Case "N41" ' Bu şekilde diğer hücre adreslerini de girebilirsiniz.
                
            End Select
        Next
        Application.EnableEvents = True
    End If
End Sub
 

cocoa35

Altın Üye
Katılım
6 Eylül 2007
Mesajlar
652
Excel Vers. ve Dili
excel 2016 32 Bit ve Excel 2020 32 Bit Türkçe ve İngilizce
Altın Üyelik Bitiş Tarihi
10-12-2024
Muzaffer Ali bey ilginiz için çok teşekkür ederim, dediğiniz gibi kod'ları düzenledim ancak "If Not Intersect (Target, Range(...54 Adet..daha fazla olunca hata veriyor....)

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Bak As Range
If Not Intersect(Target, Range("N8,N26,N41,N42,N43,N47,N136,N147,N148,N153,N163,C164,N201,N212,N216,N292,N297,N300,N318,N322,N323,N334,N336,N342,N382,N383,N384,N385,N386,N387,N388,N389,N390,N391,L391,N402,N411,N415,L415,N462,N471,N472,N473,N474,N479,N480,N486,N487,N488,N489,N490,N491,N492,N501,N502,N503,N504,N505,N506,N507,N508,N509,N510,N511,N512,N541,N542,N543,N544,N545,N546,N553,N554,N555,N556,N557,N565,N619,N685,N686,N691,N692,N696,N697,N701,N702,N703,N767,N768,N769,N770,N771,N772,N773,N774,N775,N776,N777,N778,N779,N780,N784,N785,N802,N837,N838,N883,N946,N951,N952,N953,N954,N958,N959,N960")) Is Nothing Then
Application.EnableEvents = False
For Each Bak In Target
Select Case Replace(Bak.Address, "$", "")
Case "N8"
Range("N8").FormulaLocal = "='BİRİM FİYATLAR'!H61*K4"
Case "N26"
Range("N26").FormulaLocal = "=(((C30*10)*E26)/33)*K4"
Case "N41"
Range("N41").FormulaLocal = "=(ARA(C54;VERI!J149:J187;VERI!U149:U187))*K4"
Case "N42"
Range("N42").FormulaLocal = "=(ARA('MEKANİK HESAPLAR'!C54;VERI!H191:H213;VERI!J191:J213))*K4"
Case "N43"
Range("N43").FormulaLocal = "=(ARA('MEKANİK HESAPLAR'!G43;VERI!D75:D100;VERI!E75:E100))*K4"
Case "N47"
Range("N47").FormulaLocal = "=(DÜŞEYARA(I47;DONE!B195:C201;2;DOĞRU))*K4"
Case "N136"
Range("N136").FormulaLocal = "=(DÜŞEYARA('MEKANİK HESAPLAR'!F136;DONE!B182:N189;13;DOĞRU)*DOVIZ!F14)*K4"
Case "N147"
Range("N147").FormulaLocal = "=(ARA(F147;VERI!L271:L291;VERI!N271:N291))*K4"
Case "N148"
Range("N148").FormulaLocal = "=((11500/6,2)*DOVIZ2!E7)*K4"
Case "N153"
Range("N153").FormulaLocal = "=(N148*0,65)*K4"
Case "N163"
Range("N163").FormulaLocal = "=(DÜŞEYARA(F163;KOD!C139:Q157;15;DOĞRU)*DOVIZ!F14)*K4"
Case "C164"
Range("C164").FormulaLocal = "='PROSES HESAPLARI'!C683"
Case "N201"
Range("N201").FormulaLocal = "=(DÜŞEYARA(F201;DONE!B$182:N$189;13;1)*DOVIZ!F14)*K4"
Case "N212"
Range("N212").FormulaLocal = "=3600*DOVIZ!C14*K4"
Case "N216"
Range("N216").FormulaLocal = "=(DÜŞEYARA(G216;BAY.BAK!C:F;4;0))*K4"
Case "N292"
Range("N292").FormulaLocal = "=(DÜŞEYARA(F292;DONE!B204:C214;2;1)*DOVIZ!F14)*K4"
Case "N297"
Range("N297").FormulaLocal = "=(DÜŞEYARA(F297;DONE!B204:C214;2;1)*DOVIZ!F14)*K4"
Case "N300"
Range("N300").FormulaLocal = "=(DÜŞEYARA(F300;DONE!G204:J212;4;1))*K4"
Case "N318"
Range("N318").FormulaLocal = "=(EĞER(A318=1;ARA(F318;KOD!D439:D450;KOD!T439:T450)*DOVIZ!F14;DÜŞEYARA(C318;KOD!C455:U458;18;DOĞRU)*DOVIZ!F14))*K4"
Case "N322"
Range("N322").FormulaLocal = "=VERI!I385*K4"
Case "N323"
Range("N323").FormulaLocal = "=VERI!Q385*K4"
Case "N334"
Range("N334").FormulaLocal = "=VERI!Q400*K4"
Case "N336"
Range("N336").FormulaLocal = "=VERI!Q416*K4"
Case "N342"
Range("N342").FormulaLocal = "=N336"
Case "N382"
Range("N382").FormulaLocal = "=(ARA(F382;VERI!J$149:J$187;VERI!U$149:U$187))*K4"
Case "N383"
Range("N383").FormulaLocal = "=(ARA(F383;VERI!J$149:J$187;VERI!U$149:U$187))*K4"
Case "N384"
Range("N384").FormulaLocal = "=(ARA(F384;VERI!J$149:J$187;VERI!U$149:U$187))*K4"
Case "N385"
Range("N385").FormulaLocal = "=(ARA(F385;VERI!J$149:J$187;VERI!U$149:U$187))*K4"
Case "N386"
Range("N386").FormulaLocal = "=(DÜŞEYARA(F386;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7)*K4"
Case "N387"
Range("N387").FormulaLocal = "=(DÜŞEYARA(F387;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7)*K4"
Case "N388"
Range("N388").FormulaLocal = "=(DÜŞEYARA(F388;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7)*K4"
Case "N389"
Range("N389").FormulaLocal = "=(DÜŞEYARA(F389;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7)*K4"
Case "N390"
Range("N390").FormulaLocal = "=(DÜŞEYARA(F390;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7)*K4"
Case "N391"
Range("N391").FormulaLocal = "=(DÜŞEYARA(F391;VERI!D492:L516;9;1)*DOVIZ!C14)*K4"
Case "L391"
Range("L391").FormulaLocal = "='PROSES HESAPLARI'!C2491"
Case "N402"
Range("N402").FormulaLocal = "=(DÜŞEYARA(F402;VERI!B452:C490;2;DOĞRU)*DOVIZ!C7)*K4"
Case "N411"
Range("N411").FormulaLocal = "=(DÜŞEYARA(F411;KOD!B873:K886;10;DOĞRU)*DOVIZ!F14)*K4"
Case "N415"
Range("N415").FormulaLocal = "=(DÜŞEYARA(F415;VERI!L521:M530;2;1)*DOVIZ!F14)*K4"
Case "L415"
Range("L415").FormulaLocal = "=EĞER(DONE!F16=2;'PROSES HESAPLARI'!C2804;0)"
Case "N462"
Range("N462").FormulaLocal = "=DÜŞEYARA(F462;VERI!B452:C490;2;1)*DOVIZ!F7*K4"
Case "N471"
Range("N471").FormulaLocal = "=DÜŞEYARA(F471;KOD!B873:K886;10;DOĞRU)*DOVIZ!F14*K4"
Case "N472"
Range("N472").FormulaLocal = "=ARA(F472;VERI!J$149:J$187;VERI!U$149:U$187)*K4"
Case "N473"
Range("N473").FormulaLocal = "=ARA(F473;VERI!J$149:J$187;VERI!U$149:U$187)*K4"
Case "N474"
Range("N474").FormulaLocal = "=DÜŞEYARA(F474;VERI!B452:C490;2;DOĞRU)*DOVIZ!F7*2,67*K4"
Case "N479"
Range("N479").FormulaLocal = "=ARA(F479;VERI!J$149:J$187;VERI!U$149:U$187)*K4"
Case "N480"
Range("N480").FormulaLocal = "=DÜŞEYARA(F480;VERI!D$492:L$516;9;1)*DOVIZ!C$14*K4"
Case "N486"
Range("N486").FormulaLocal = "=DÜŞEYARA(F486;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7*K4"
Case "N487"
Range("N487").FormulaLocal = "=DÜŞEYARA(F487;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7*K4"
Case "N488"
Range("N488").FormulaLocal = "=DÜŞEYARA(F488;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7*K4"
Case "N489"
Range("N489").FormulaLocal = "=DÜŞEYARA(F489;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7*K4"
Case "N490"
Range("N490").FormulaLocal = "=DÜŞEYARA(F490;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7*K4"
Case "N491"
Range("N491").FormulaLocal = "=DÜŞEYARA(F491;VERI!D$492:L$516;9;1)*DOVIZ!C$14*K4"
Case "N492"
Range("N492").FormulaLocal = "=DÜŞEYARA(F492;VERI!D$492:L$516;9;1)*DOVIZ!C$14*K4"
Case "N501"
Range("N501").FormulaLocal = "=(EĞER(A501=1;ARA(F501;KOD!C574:C582;KOD!AF574:AF582);ARA(F501;KOD!C586:C603;KOD!O586:O603))*DOVIZ!F14)*K4"
Case "N502"
Range("N502").FormulaLocal = "=EĞER(A501=1;515,87;354,78)*DOVIZ!F14*K4"
Case "N503"
Range("N503").FormulaLocal = "=(EĞER('PROSES HESAPLARI'!H3832='PROSES HESAPLARI'!H3834;ARA('MEKANİK HESAPLAR'!F503;KOD!AH574:AH582;KOD!AG574:AG582);ARA(F503;KOD!E609:E624;KOD!L609:L624))*DOVIZ!F14)*K4"
Case "N504"
Range("N504").FormulaLocal = "=DÜŞEYARA(F504;KOD!L718:T728;9;1)*DOVIZ!F14*K4"
Case "N505"
Range("N505").FormulaLocal = "=DÜŞEYARA(F505;KOD!L718:U728;10;1)*DOVIZ!F14*K4"
Case "N506"
Range("N506").FormulaLocal = "=DÜŞEYARA(F506;KOD!L718:V728;11;1)*DOVIZ!F14*K4"
Case "N507"
Range("N507").FormulaLocal = "=DÜŞEYARA(F507;KOD!L718:T728;9;1)*DOVIZ!F14*K4"
Case "N508"
Range("N508").FormulaLocal = "=DÜŞEYARA(F508;KOD!L718:T728;9;1)*DOVIZ!F14*1,5*K4"
Case "N509"
Range("N509").FormulaLocal = "=DÜŞEYARA(F509;KOD!B716:K730;10;1)*DOVIZ!F14*K4"
Case "N510"
Range("N510").FormulaLocal = "=DÜŞEYARA(F510;VERI!B$452:C$490;2;DOĞRU)*DOVIZ!F$7*K4"
Case "N511"
Range("N511").FormulaLocal = "=(EĞER('PROSES HESAPLARI'!H3832='PROSES HESAPLARI'!H3834;ARA(F511;KOD!AH574:AH582;KOD!AG574:AG582);ARA(F511;KOD!E609:E624;KOD!L609:L624))*DOVIZ!F14)*K4"
Case "N512"
Range("N512").FormulaLocal = "=DÜŞEYARA(F512;KOD!C630:K643;9;1)*DOVIZ!F14*K4"
Case "N541"
Range("N541").FormulaLocal = "=DÜŞEYARA(F541;VERI!D$492:L$516;9;1)*DOVIZ!C$14*K4"
Case "N542"
Range("N542").FormulaLocal = "=VERI!AG385*K4"
Case "N543"
Range("N543").FormulaLocal = "=VERI!AG398*K4"
Case "N544"
Range("N544").FormulaLocal = "=VERI!Q400*K4"

End Select
Next
Application.EnableEvents = True
End If
End Sub
 

Ekli dosyalar

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,453
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Ben olsam sayfa koruma yöntemini denerdim. Bu kadar kod yazmaya gerek kalmazdı.

Ya da bu işlem çok gerekli ise boş bir yedek sayfada formül adreslerini ve uygulamak istediğiniz formülleri metin olarak alt alta yazıp döngü ile ilgili sayfaya aktarabilirsiniz. Bu yedek sayfayıda gizleyerek koruma altına alabilirsiniz.
 

cocoa35

Altın Üye
Katılım
6 Eylül 2007
Mesajlar
652
Excel Vers. ve Dili
excel 2016 32 Bit ve Excel 2020 32 Bit Türkçe ve İngilizce
Altın Üyelik Bitiş Tarihi
10-12-2024
Merhaba Korhan bey, Sayfa koruma ile yapamıyorum çünkü benim amacım , Kullanan kişi hücreye istediğinde bir rakkam girilebilmesi, eğer vaz geçmek istenir ise hücre eski haline dönsün istiyorum. Esasında buna benzer bir kod'u siz daha önce yazmıştınız. ben o kod'u buna göre adapte edemedim maalesef. Yukarıdaki kod'da "If intersect target" bölümüne 58 adet hücre girince çalışıyor, ancak daha fazla girince çalışmıyor, siz daha önce Adres1, Adres2, Adres3, Alan kod'ları ile bunu çözmüştünüz ancak ben o kod'u dediğim gibi uyguluyamadım.
 

cocoa35

Altın Üye
Katılım
6 Eylül 2007
Mesajlar
652
Excel Vers. ve Dili
excel 2016 32 Bit ve Excel 2020 32 Bit Türkçe ve İngilizce
Altın Üyelik Bitiş Tarihi
10-12-2024
Korhan bey, Muzaffer Ali bey, Şimdi tekrar denedim esasında yukarıdaki kod'lar tam istediğim gibi olmamış , hücreye başka bir rakkam girmeye olanak vermiyor! sayfa başındaki kod'lar şeklinde olmalı. Kullanan kişi sayfada ilgili hücreye istediği rakkamı girip işlem yapmalı ancak eğer isterse o rakkamı sildiğinde hücre yeniden eski kod'lar ile işlemi yapmalı.İlk başta verdiğim kod'lar bu işlemi yapıyor. Ancak 58 hücreye yaptırabiliyorum. Fakat sayfada bu şekilde olan daha fazla hücre var.
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,582
Excel Vers. ve Dili
Pro Plus 2021
Kod:
    Set rng1 = Range("N8,N26,N41:N43,N47,N136,N147:N148,N153,N163,C164,N201,N212,N216,N292,N297,N300,N318,N322:N323,N334,N336,N342,N382:N391")
    Set rng2 = Range("L391,N402,N411,N415,L415,N462,N471:N474,N479:N480,N486:N492,N501:N512,N541:N546,N553:N557,N565,N619,N685:N686,N691:N692")
    Set rng3 = Range("N696:N697,N701:N703,N767:N780,N784:N785,N802,N837:N838,N883,N946,N951:N954,N958:N960")
    Set Rng = Union(rng1, rng2, rng3)
    
    If Not Intersect(Target, Rng) then ....
Kod:
    Set Rng = Range("N8,N26,N41:N43,N47,N136,N147:N148,N153,N163," & _
                    "C164,N201,N212,N216,N292,N297,N300,N318,N322:N323," & _
                    "N334,N336,N342,N382:N391,L391,N402,N411,N415,L415," & _
                    "N462,N471:N474,N479:N480,N486:N492")
    If Not Intersect(Target, Rng) then ....
 

cocoa35

Altın Üye
Katılım
6 Eylül 2007
Mesajlar
652
Excel Vers. ve Dili
excel 2016 32 Bit ve Excel 2020 32 Bit Türkçe ve İngilizce
Altın Üyelik Bitiş Tarihi
10-12-2024
sn Veysel emre teşekkürler, Ancak bir yardım daha rica ediyorum , göndermiş olduğunuz kod'ları aşağıdaki kod'lara nasıl adapte edeceğiz ?

Private Sub Worksheet_Change(ByVal Target As Range)

If Intersect(Target, Range("N8,N26,N41,N42,N43,N47,N136,N147,N148,N153,N163,C164,N201,N212,N216,N292,N297,N300,N318,N322,N323,N334,N336,N342,N382,N383,N384,N385,N386,N387,N388,N389,N390,N391,L391,N402,N411,N415,L415,N462,N471,N472,N473,N474,N479,N480,N486,N487,N488,N489,N490,N491")) Is Nothing Then Exit Sub

Application.EnableEvents = False

If Range("N8") = "" Then Range("N8").FormulaLocal = "='BİRİM FİYATLAR'!H61*K4"

If Range("N26") = "" Then Range("N26").FormulaLocal = "=(((C30*10)*E26)/33)*K4"

If Range("N41") = "" Then Range("N41").FormulaLocal = "=(ARA(C54;VERI!J149:J187;VERI!U149:U187))*K4"

If Range("N42") = "" Then Range("N42").FormulaLocal = "=(ARA('MEKANİK HESAPLAR'!C54;VERI!H191:H213;VERI!J191:J213))*K4"

If Range("N43") = "" Then Range("N43").FormulaLocal = "=(ARA('MEKANİK HESAPLAR'!G43;VERI!D75:D100;VERI!E75:E100))*K4"

If Range("N47") = "" Then Range("N47").FormulaLocal = "=(DÜŞEYARA(I47;DONE!B195:C201;2;DOĞRU))*K4"

If Range("N136") = "" Then Range("N136").FormulaLocal = "=(DÜŞEYARA('MEKANİK HESAPLAR'!F136;DONE!B182:N189;13;DOĞRU)*DOVIZ!F14)*K4"

If Range("N147") = "" Then Range("N147").FormulaLocal = "=(ARA(F147;VERI!L271:L291;VERI!N271:N291))*K4"

If Range("N148") = "" Then Range("N148").FormulaLocal = "=((11500/6,2)*DOVIZ2!E7)*K4"

If Range("N153") = "" Then Range("N153").FormulaLocal = "=(N148*0,65)*K4"

If Range("N163") = "" Then Range("N163").FormulaLocal = "=(DÜŞEYARA(F163;KOD!C139:Q157;15;DOĞRU)*DOVIZ!F14)*K4"

If Range("C164") = "" Then Range("C164").FormulaLocal = "='PROSES HESAPLARI'!C683"

If Range("N201") = "" Then Range("N201").FormulaLocal = "=(DÜŞEYARA(F201;DONE!B$182:N$189;13;1)*DOVIZ!F14)*K4"

If Range("N212") = "" Then Range("N212").FormulaLocal = "=3600*DOVIZ!C14*K4"

If Range("N216") = "" Then Range("N216").FormulaLocal = "=(DÜŞEYARA(G216;BAY.BAK!C:F;4;0))*K4"

If Range("N292") = "" Then Range("N292").FormulaLocal = "=(DÜŞEYARA(F292;DONE!B204:C214;2;1)*DOVIZ!F14)*K4"

If Range("N297") = "" Then Range("N297").FormulaLocal = "=(DÜŞEYARA(F297;DONE!B204:C214;2;1)*DOVIZ!F14)*K4"

If Range("N300") = "" Then Range("N300").FormulaLocal = "=(DÜŞEYARA(F300;DONE!G204:J212;4;1))*K4"

If Range("N318") = "" Then Range("N318").FormulaLocal = "=(EĞER(A318=1;ARA(F318;KOD!D439:D450;KOD!T439:T450)*DOVIZ!F14;DÜŞEYARA(C318;KOD!C455:U458;18;DOĞRU)*DOVIZ!F14))*K4"

If Range("N322") = "" Then Range("N322").FormulaLocal = "=VERI!I385*K4"

If Range("N323") = "" Then Range("N323").FormulaLocal = "=VERI!Q385*K4"

If Range("N334") = "" Then Range("N334").FormulaLocal = "=VERI!Q400*K4"

If Range("N336") = "" Then Range("N336").FormulaLocal = "=VERI!Q416*K4"

If Range("N342") = "" Then Range("N342").FormulaLocal = "=N336"

If Range("N382") = "" Then Range("N382").FormulaLocal = "=(ARA(F382;VERI!J$149:J$187;VERI!U$149:U$187))*K4"

If Range("N383") = "" Then Range("N383").FormulaLocal = "=(ARA(F383;VERI!J$149:J$187;VERI!U$149:U$187))*K4"

If Range("N384") = "" Then Range("N384").FormulaLocal = "=(ARA(F384;VERI!J$149:J$187;VERI!U$149:U$187))*K4"

If Range("N385") = "" Then Range("N385").FormulaLocal = "=(ARA(F385;VERI!J$149:J$187;VERI!U$149:U$187))*K4"

If Range("N386") = "" Then Range("N386").FormulaLocal = "=(DÜŞEYARA(F386;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7)*K4"

If Range("N387") = "" Then Range("N387").FormulaLocal = "=(DÜŞEYARA(F387;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7)*K4"

If Range("N388") = "" Then Range("N388").FormulaLocal = "=(DÜŞEYARA(F388;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7)*K4"

If Range("N389") = "" Then Range("N389").FormulaLocal = "=(DÜŞEYARA(F389;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7)*K4"

If Range("N390") = "" Then Range("N390").FormulaLocal = "=(DÜŞEYARA(F390;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7)*K4"

If Range("N391") = "" Then Range("N391").FormulaLocal = "=(DÜŞEYARA(F391;VERI!D492:L516;9;1)*DOVIZ!C14)*K4"

If Range("L391") = "" Then Range("L391").FormulaLocal = "='PROSES HESAPLARI'!C2491"

If Range("N402") = "" Then Range("N402").FormulaLocal = "=(DÜŞEYARA(F402;VERI!B452:C490;2;DOĞRU)*DOVIZ!C7)*K4"

If Range("N411") = "" Then Range("N411").FormulaLocal = "=(DÜŞEYARA(F411;KOD!B873:K886;10;DOĞRU)*DOVIZ!F14)*K4"

If Range("N415") = "" Then Range("N415").FormulaLocal = "=(DÜŞEYARA(F415;VERI!L521:M530;2;1)*DOVIZ!F14)*K4"

If Range("L415") = "" Then Range("L415").FormulaLocal = "=EĞER(DONE!F16=2;'PROSES HESAPLARI'!C2804;0)"

If Range("N462") = "" Then Range("N462").FormulaLocal = "=DÜŞEYARA(F462;VERI!B452:C490;2;1)*DOVIZ!F7*K4"

If Range("N471") = "" Then Range("N471").FormulaLocal = "=DÜŞEYARA(F471;KOD!B873:K886;10;DOĞRU)*DOVIZ!F14*K4"

If Range("N472") = "" Then Range("N472").FormulaLocal = "=ARA(F472;VERI!J$149:J$187;VERI!U$149:U$187)*K4"

If Range("N473") = "" Then Range("N473").FormulaLocal = "=ARA(F473;VERI!J$149:J$187;VERI!U$149:U$187)*K4"

If Range("N474") = "" Then Range("N474").FormulaLocal = "=DÜŞEYARA(F474;VERI!B452:C490;2;DOĞRU)*DOVIZ!F7*2,67*K4"

If Range("N479") = "" Then Range("N479").FormulaLocal = "=ARA(F479;VERI!J$149:J$187;VERI!U$149:U$187)*K4"

If Range("N480") = "" Then Range("N480").FormulaLocal = "=DÜŞEYARA(F480;VERI!D$492:L$516;9;1)*DOVIZ!C$14*K4"

If Range("N486") = "" Then Range("N486").FormulaLocal = "=DÜŞEYARA(F486;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7*K4"

If Range("N487") = "" Then Range("N487").FormulaLocal = "=DÜŞEYARA(F487;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7*K4"

If Range("N488") = "" Then Range("N488").FormulaLocal = "=DÜŞEYARA(F488;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7*K4"

If Range("N489") = "" Then Range("N489").FormulaLocal = "=DÜŞEYARA(F489;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7*K4"

If Range("N490") = "" Then Range("N490").FormulaLocal = "=DÜŞEYARA(F490;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7*K4"

If Range("N491") = "" Then Range("N491").FormulaLocal = "=DÜŞEYARA(F491;VERI!D$492:L$516;9;1)*DOVIZ!C$14*K4"

'If Range("N492") = "" Then Range("N492").FormulaLocal = "=DÜŞEYARA(F492;VERI!D$492:L$516;9;1)*DOVIZ!C$14*K4"

'If Range("N501") = "" Then Range("N501").FormulaLocal = "=(EĞER(A501=1;ARA(F501;KOD!C574:C582;KOD!AF574:AF582);ARA(F501;KOD!C586:C603;KOD!O586:O603))*DOVIZ!F14)*K4"

'If Range("N502") = "" Then Range("N502").FormulaLocal = "=EĞER(A501=1;515,87;354,78)*DOVIZ!F14*K4"

'If Range("N503") = "" Then Range("N503").FormulaLocal = "=(EĞER('PROSES HESAPLARI'!H3832='PROSES HESAPLARI'!H3834;ARA('MEKANİK HESAPLAR'!F503;KOD!AH574:AH582;KOD!AG574:AG582);ARA(F503;KOD!E609:E624;KOD!L609:L624))*DOVIZ!F14)*K4"

'If Range("N504") = "" Then Range("N504").FormulaLocal = "=DÜŞEYARA(F504;KOD!L718:T728;9;1)*DOVIZ!F14*K4"

'If Range("N505") = "" Then Range("N505").FormulaLocal = "=DÜŞEYARA(F505;KOD!L718:U728;10;1)*DOVIZ!F14*K4"

'If Range("N506") = "" Then Range("N506").FormulaLocal = "=DÜŞEYARA(F506;KOD!L718:V728;11;1)*DOVIZ!F14*K4"

'If Range("N507") = "" Then Range("N507").FormulaLocal = "=DÜŞEYARA(F507;KOD!L718:T728;9;1)*DOVIZ!F14*K4"

'If Range("N508") = "" Then Range("N508").FormulaLocal = "=DÜŞEYARA(F508;KOD!L718:T728;9;1)*DOVIZ!F14*1,5*K4"

'If Range("N509") = "" Then Range("N509").FormulaLocal = "=DÜŞEYARA(F509;KOD!B716:K730;10;1)*DOVIZ!F14*K4"

'If Range("N510") = "" Then Range("N510").FormulaLocal = "=DÜŞEYARA(F510;VERI!B$452:C$490;2;DOĞRU)*DOVIZ!F$7*K4"

'If Range("N511") = "" Then Range("N511").FormulaLocal = "=(EĞER('PROSES HESAPLARI'!H3832='PROSES HESAPLARI'!H3834;ARA(F511;KOD!AH574:AH582;KOD!AG574:AG582);ARA(F511;KOD!E609:E624;KOD!L609:L624))*DOVIZ!F14)*K4"

'If Range("N512") = "" Then Range("N512").FormulaLocal = "=DÜŞEYARA(F512;KOD!C630:K643;9;1)*DOVIZ!F14*K4"

'If Range("N541") = "" Then Range("N541").FormulaLocal = "=DÜŞEYARA(F541;VERI!D$492:L$516;9;1)*DOVIZ!C$14*K4"

'If Range("N542") = "" Then Range("N542").FormulaLocal = "=VERI!AG385*K4"

'If Range("N543") = "" Then Range("N543").FormulaLocal = "=VERI!AG398*K4"

'If Range("N544") = "" Then Range("N544").FormulaLocal = "=VERI!Q400*K4"

'If Range("N546") = "" Then Range("N546").FormulaLocal = "=DÜŞEYARA(F546;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7*K4"

'If Range("N553") = "" Then Range("N553").FormulaLocal = "=DÜŞEYARA(F553;DONE!B$182:N$189;13;1)*DOVIZ!F14*K4"

'If Range("N554") = "" Then Range("N554").FormulaLocal = "=DÜŞEYARA(F554;VERI!B$452:C$490;2;1)*DOVIZ!C$14*K4"

'If Range("N555") = "" Then Range("N555").FormulaLocal = "=DÜŞEYARA(F555;VERI!B$452:C$490;2;1)*DOVIZ!C$14*K4"

'If Range("N556") = "" Then Range("N556").FormulaLocal = "=DÜŞEYARA(F556;VERI!B$452:C$490;2;1)*DOVIZ!C$14*K4"

'If Range("N557") = "" Then Range("N557").FormulaLocal = "=DÜŞEYARA(F557;VERI!B$452:C$490;2;1)*DOVIZ!C$14*K4"

'If Range("N565") = "" Then Range("N565").FormulaLocal = "=13000*DOVIZ!F14*K4"

'If Range("N619") = "" Then Range("N619").FormulaLocal = "=1250*DOVIZ!F14*K4"

'If Range("N685") = "" Then Range("N685").FormulaLocal = "=DÜŞEYARA(F685;KOD!B672:I678;8;1)*DOVIZ!F7*K4"

'If Range("N686") = "" Then Range("N686").FormulaLocal = "=VERI!Y399*K4"

'If Range("N691") = "" Then Range("N691").FormulaLocal = "=N685*0,13*K4"

'If Range("N692") = "" Then Range("N692").FormulaLocal = "=N686"

'If Range("N696") = "" Then Range("N696").FormulaLocal = "=DÜŞEYARA(F696;KOD!F809:G828;2;1)*DOVIZ!F14*K4"

'If Range("N697") = "" Then Range("N697").FormulaLocal = "=VERI!Y413*K4"

'If Range("N701") = "" Then Range("N701").FormulaLocal = "=DÜŞEYARA(F701;VERI!B452:C490;2;1)*DOVIZ!F7*K4"

'If Range("N702") = "" Then Range("N702").FormulaLocal = "=DÜŞEYARA(F702;KOD!J770:K776;2;1)*DOVIZ!F14*K4"

'If Range("N703") = "" Then Range("N703").FormulaLocal = "=DÜŞEYARA(F703;VERI!B$521:D$563;3;DOĞRU)*DOVIZ!F$7*K4"

'If Range("N767") = "" Then Range("N767").FormulaLocal = "=DÜŞEYARA(F767;VERI!B$452:C$490;2;DOĞRU)*DOVIZ!F$7*K4"

'If Range("N768") = "" Then Range("N768").FormulaLocal = "=DÜŞEYARA(F768;VERI!B$452:C$490;2;DOĞRU)*DOVIZ!F$7*K4"




Application.EnableEvents = True

End Sub
 

cocoa35

Altın Üye
Katılım
6 Eylül 2007
Mesajlar
652
Excel Vers. ve Dili
excel 2016 32 Bit ve Excel 2020 32 Bit Türkçe ve İngilizce
Altın Üyelik Bitiş Tarihi
10-12-2024
Tamam uyguladım Veysel Emre, Korhan Ayhan, Muzaffer Ali çok teşekkür ederim.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,453
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Çok fazla hücre adresi belirtmek için UNION komutundan faydalanılır.

Alan_A = Range("A1,A5,A10")
Alan_B = Range("C1,C5,C10")
Alan_C = Range("E1,E5,E10")
Set Tum_Alan = Union(Alan_A, Alan_B, Alan_C)

Hem alanların içindeki hücre sayılarını artırabilirsiniz. Hem de Union ile birleştirilen alandaki adres tanımlarını arttırabilirsiniz.

Ama bence daha kontrollü olmak adına dediğim gibi yedek bir sayfada formülleri ve hücre adreslerini alt alta yazıp döngü ile daha kısa bir kodlama ile işlemi yapabilirsiniz.
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
5,806
Excel Vers. ve Dili
2019 Türkçe
Birde ardışık hücre adreslerini N41,N42,N43
iki nokta üst üste ile tek seferde belirtebilirsiniz. Şöyle ki N41:N43
Yani örnekteki kodlarınız şöyle olabilir.

Kod:
Range("N8,N26,N41:N43,N47,.......
Belki de bu durumda Union kullanmanıza gerek kalmayabilir.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,453
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Ben bahsettiğim yöntemle hazırladığım dosyayı paylaşıyorum.

Eğer uygulama açısından kolay gelirse kullanırsınız.

Sizin dosyanızda ki sayfalar bende olmadığı için örnek formüller oluşturdum.

Siz kod içinde ki hücre aralığını ve "Formüller" sayfasında ki A-B sütunlarını düzenlemeniz yeterli olacaktır.
 

Ekli dosyalar

Üst