Soru Makronun hangi excel sayfasında çalışacağı

Katılım
27 Ekim 2017
Mesajlar
59
Excel Vers. ve Dili
2010 turkce
Altın Üyelik Bitiş Tarihi
01-11-2021
Makronun hangi excel sayfasında çalışacağını nasıl belirteceğiz?

Düğmeyi Sayfa3’e ekleyip ilgili makroyu bu düğmeye atayınca kod Sayfa3 için çalışıyor.

Düğmeyi Sayfa1’e ekleyip ilgili makroyu bu düğmeye atayınca kod Sayfa1 için çalışıyor; ben düğmeyi Sayfa1’e ekleyip, ilgili makroyu atayınca Sayfa3 için çalışmasını istiyorum. Kodların en başına ne yazmamız gerekiyor? Yardımcı olursanız çok memnun olurum..
 

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,784
Excel Vers. ve Dili
Microsoft 365 Tr-64
Sanırım ikisi de uygulanabilir.
C++:
Sub Öteki_Sayfada()
Application.ScreenUpdating = False
Worksheets("Sayfa3").Activate
    '.....
    'Kodlarınız
    '.....
Worksheets("Sayfa1").Activate
Application.ScreenUpdating = True
End Sub

Sub Öteki_Sayfada_2()
Dim Sh As Worksheet
Set Sh = Worksheets("Sayfa3")
    '.....
    'Kodlarınız
    '.....
    'Kodlarınızdaki tüm hücre başvurularının önüne
    'Range("A1") Yerine
    'Sh.Range("A1") gibi Sh ifadesini yazın
   
End Sub
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,738
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Kodlarınızın yapısı uygunsa aşağıdaki gibi de uygulayabilirsiniz.

C++:
Option Explicit

Sub Test()
    With Sheets("Sayfa3")
        .Cells(1, 1) = "Başlık1"
        .Cells(1, 2) = "Başlık2"
        .Cells(1, 3) = "Başlık3"
        .Cells(1, 4) = "Başlık4"
        .Cells(1, 5) = "Başlık5"
    End With
End Sub
 
Katılım
27 Ekim 2017
Mesajlar
59
Excel Vers. ve Dili
2010 turkce
Altın Üyelik Bitiş Tarihi
01-11-2021
Sanırım ikisi de uygulanabilir.
C++:
Sub Öteki_Sayfada()
Application.ScreenUpdating = False
Worksheets("Sayfa3").Activate
    '.....
    'Kodlarınız
    '.....
Worksheets("Sayfa1").Activate
Application.ScreenUpdating = True
End Sub

Sub Öteki_Sayfada_2()
Dim Sh As Worksheet
Set Sh = Worksheets("Sayfa3")
    '.....
    'Kodlarınız
    '.....
    'Kodlarınızdaki tüm hücre başvurularının önüne
    'Range("A1") Yerine
    'Sh.Range("A1") gibi Sh ifadesini yazın
  
End Sub
Teşekkür ederim, elinize sağlık:)
 
Katılım
27 Ekim 2017
Mesajlar
59
Excel Vers. ve Dili
2010 turkce
Altın Üyelik Bitiş Tarihi
01-11-2021
Kodlarınızın yapısı uygunsa aşağıdaki gibi de uygulayabilirsiniz.

C++:
Option Explicit

Sub Test()
    With Sheets("Sayfa3")
        .Cells(1, 1) = "Başlık1"
        .Cells(1, 2) = "Başlık2"
        .Cells(1, 3) = "Başlık3"
        .Cells(1, 4) = "Başlık4"
        .Cells(1, 5) = "Başlık5"
    End With
End Sub
Teşekkür ederim Korhan Bey, elinize sağlık:)
 
Üst