Sayfa her açıldığında otamatik makronun çalışması

Katılım
27 Mayıs 2010
Mesajlar
527
Excel Vers. ve Dili
Excel 2003 Turkçe
Selamlar,

Ekteki excel dosyasından da analşılacağı gibi sayfa1 her açıldığında G5 ile G44 arası hücrelerde makronun otomatik çalışıp parçaal işlemini yapmasını istiyorum.
Yardımınız için şşimdiden teşekkür ederim.
 

Ekli dosyalar

Emir Hüseyin Çoban

Destek Ekibi
Destek Ekibi
Katılım
11 Ağustos 2008
Mesajlar
5,892
Excel Vers. ve Dili
Office 2013 Tr - Win10 x64
Merhaba,
Sayfanın her aktif olduğunda makronun çalışması için, sayfanın kod bölümünde aşağıdaki kodların arasına kodlarınızı yazmalısınız.

Kod:
Private Sub Worksheet_Activate()

End Sub
Parçaal işlemini anlayamadım. Sorunuzu biraz daha açar mısınız.

Selamlar,

Ekteki excel dosyasından da analşılacağı gibi sayfa1 her açıldığında G5 ile G44 arası hücrelerde makronun otomatik çalışıp parçaal işlemini yapmasını istiyorum.
Yardımınız için şşimdiden teşekkür ederim.
 
Katılım
27 Mayıs 2010
Mesajlar
527
Excel Vers. ve Dili
Excel 2003 Turkçe
Merhaba,
Sayfanın her aktif olduğunda makronun çalışması için, sayfanın kod bölümünde aşağıdaki kodların arasına kodlarınızı yazmalısınız.

Kod:
Private Sub Worksheet_Activate()

End Sub
Parçaal işlemini anlayamadım. Sorunuzu biraz daha açar mısınız.
Pardon; G5 den G44 e kadar yapmasını istediğim işlem bu =EĞER(I5>J5;(I5/(I5+J5)*100);EĞER(J5>I5;(J5/(I5+J5)*100);50)) bu işlemi sayfa her açıldığında makro yardımı ile otamatik yapmasını istiyorum.
 

Emir Hüseyin Çoban

Destek Ekibi
Destek Ekibi
Katılım
11 Ağustos 2008
Mesajlar
5,892
Excel Vers. ve Dili
Office 2013 Tr - Win10 x64
Aşağıdaki kodları, sayfanın kod bölümüne yapıştırarak deneyiniz.

Kod:
Private Sub Worksheet_Activate()
    Range("G5").Select
    ActiveCell.FormulaR1C1 = _
        "=IF(RC[2]>RC[3],(RC[2]/(RC[2]+RC[3])*100),IF(RC[3]>RC[2],(RC[3]/(RC[2]+RC[3])*100),50))"
    Range("G5").Copy
    Range("G6:G44").Select
    ActiveSheet.Paste
End Sub
 
Katılım
27 Mayıs 2010
Mesajlar
527
Excel Vers. ve Dili
Excel 2003 Turkçe
Aşağıdaki kodları, sayfanın kod bölümüne yapıştırarak deneyiniz.

Kod:
Private Sub Worksheet_Activate()
    Range("G5").Select
    ActiveCell.FormulaR1C1 = _
        "=IF(RC[2]>RC[3],(RC[2]/(RC[2]+RC[3])*100),IF(RC[3]>RC[2],(RC[3]/(RC[2]+RC[3])*100),50))"
    Range("G5").Copy
    Range("G6:G44").Select
    ActiveSheet.Paste
End Sub
Teşekkür ederim.İşte bu , çok sağolun..
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,767
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Bu da alternatif olsun.

Kod:
Option Explicit
 
Private Sub Worksheet_Activate()
    With ActiveSheet.Range("G5:G44")
        .Formula = "=IF(I5>J5,(I5/(I5+J5)*100),IF(J5>I5,(J5/(I5+J5)*100),50))"
        .Value = .Value
    End With
End Sub
 
Katılım
27 Mayıs 2010
Mesajlar
527
Excel Vers. ve Dili
Excel 2003 Turkçe
Selamlar,

Bu da alternatif olsun.

Kod:
Option Explicit
 
Private Sub Worksheet_Activate()
    With ActiveSheet.Range("G5:G44")
        .Formula = "=IF(I5>J5,(I5/(I5+J5)*100),IF(J5>I5,(J5/(I5+J5)*100),50))"
        .Value = .Value
    End With
End Sub
Üstadım, teşekkür ederim.
 
Üst