• DİKKAT

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

Aktif hücreyi büyütme

Option Explicit

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Select the range that will activate the code
If Target.Address = "$A$2" Then
'If the range is selected then zoom to 20 percent larger
'To zoom 40 percent larger change the 6 to a 7
'in the two ActiveWindow.zoom lines below
'the numbers represent a ratio-6 is 20 percent larger than 5
'and 7 is 40 percent larger than 5, etc.
'you could even use 2/1 and 1/2 to get 200 percent and back
ActiveWindow.Zoom = ActiveWindow.Zoom * 6 / 5
[A5000] = "zoomed"
ElseIf [A5000] = "zoomed" Then
'Otherwise set the zoom to original
ActiveWindow.Zoom = ActiveWindow.Zoom * 5 / 6
[A5000].ClearContents
End If
End Sub


( Bu formüldeki $A$2 ...... yeri ( B1:B50 ) arası değiştirirsek işimi görücek aslında...
 
If şartırnda hata yapmışsınız.
If şartının nasıl kullanılması gerektiği konusunda biraz bilgilenmeniz gerek...


Hanmet' Alıntı:
IF KONTROL YAPISI
Genel olarak bu komut yapısı şu şekilde yazılır.
Kod:
If Kosul Then
Kosul dogru ise yapılması istenen işlemler.
Endif

Kullandıgımız her If kontrolu için mutlaka bir Endif kullanmalıyız. Bu kontrol yapısının sonlandıgını belirtir.
Örnek:
Kod:
If ad="FATIH" Then
Maas=10000000
Endif

Eger koşul gerçekleşmemiş ise yapılması istenen bazı işlemler varsa o zaman şu şekilde bir kontrol yapısını kullanabiliriz.
Kod:
If Kosul Then
Kosul dogru ise yapılması istenen işlemler.
Else
Kosul yanlış ise yapılması istenen işlemler.
Endif

Aynı anda bir kaç koşul için karşılaştırma yapılmak isternirse;

Kod:
If Kosul Then
Kosul dogru ise yapılması istenen işlemler.
Elseif Kosul1 Then
Kosul1 dogru ise yapılması istenen işlemler.
Elseif Kosul2 Then
Kosul2 dogru ise yapılması istenen işlemler.
Else
Bütün kosullar yanlış ise yapılması istenen işlemler.
Endif
yapısı kullanılır. Bu yapıda mutlaka Else blogunun bulunmasına gerek yoktur.
Burada eger Kosul dogru ise ilk Then’den sonraki satırlar çalıştırılarak Elseif ifadesine kadar icra edilirler.
Daha sonra Endif ifadesinden sonraki satır icra edilir.Eger Kosul yanlış ise Kosul1 ifadesi kontrol edilir.
Dogru ise buradaki then den sonraki satırlar çalıştırılır. Yanlış ise Kosul2’ye bakılır.
Eger bu kosulda yanlıs ise Else ifadesinden sonraki satırlar çalıştırılır

Bu arada Korhan Bey, nasıl yapılabilirse birkaç örnek vermiş. Bence verilen örnekler üzerinde işlem yapın. Yeni bir kod verip, onun üzerinde değişiklik yaptırmayın...
 
Murat hocam
Makro hakkında çok bilgim yok malesef....

Aşağıdaki kodları ( Hamitcan hoca gönderdi ) fakat sadece $A$2 ile sınırlıydı..
Ben A1:A50 olarak genişletirsek işimi görecekti...

Sonrasında Korhan hocam yardımcı oldu saolsun , ama ondada hücre yapısı yazı karakterine göre büyüyordu , yada sayfa komple büyüyordu , saolsun yardımcı olmaya çalıştı en son rica ettim ondanda sadece a sutunuyla sınırlarsak işimi çözer diye.....

Sonrasında siz yardımcı olmaya çalıştınız , belirtiğiniz düzeltmeyi (hamitcan) hocada söyledi ama denedim olmadı...

Anlayacağınız çözemedim sıkıntımı , kodda belirtiğim gibi A1:A50 yapabilirsek çözülecek aslında

Yardımlarınız için çok teşekkür ederim , zahmet verdim hepinize...
 
Sürekli aralık değiştiriyorsunuz, bu kodun çalışmasını etkiler.

A1:A30
A1:A50
B1:B30
A1:B100

En son verdiğiniz A1:A50'yi baz alıyorum.
Deneyiniz;
Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
   If Not Intersect(Target, Range("A1:A50")) Is Nothing Then
        ActiveWindow.Zoom = 200
            Else
        ActiveWindow.Zoom = 100
    End If
End Sub
 
sayın osma öncelikle İF konusunda yaptığınız bilgilendirme ve son düzenlediğiniz kod için size teşekkür ederim bu kodu arşivime ekledim umarım sayın woodteacher' inde işine yaramıştır ayrıca sayın ayhan hocamın yaptığı her iki çalışmayıda arşivime ekledim bunun içinde sayın ayhana teşekkür ederim iyi günler iyi çalışmalar
 
Murat hocam teşekkür ederim,vermiş olduğunuz formül işimi çözdü..
Emeği geçen tüm arkadaşlara teşekkür ederim , zahmet verdim hepinize hakkınız helal edin..
 
Murat hocam hakkınızı helal edin, sizden yardım isterken , parelelinde yapığım çalışmada değişiklikler yaptım , bunun sonucunda istediğim satırlar sürekli değişti....
en son verdiğiniz kod işimi çözdü çok teşekkür ederim...
Kendim şöyle birşey deneyeyim istedim , hani olurda sonrasında lazım olur diye

A1:A50 ye ilave herhangi bir veya birkaç grup eklersem nasıl yapabilirim.
("A1:A50;B1:B50;D1:50") gibi bu artabilir veya azalabilirde.Bu konudada yardımcı olursanız sevinirim.
 
Sayın üstadlarıma değerli paylaşımlarından ötürü çok teşekkür ederim.
 
Şu şekilde yapabilirsiniz;

Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Column = 1 Or Target.Column = 2 Or Target.Column = 4 Then
        If Target.Row >= 1 And Target.Row <= 50 Then
            ActiveWindow.Zoom = 200
                Else
            ActiveWindow.Zoom = 100
        End If
            Else
        ActiveWindow.Zoom = 100
    End If
End Sub
 
Murat hocam Allah senden razı olsun ,
Böylelikle tablo esnemiş oldu , eminimki bu verdiğiniz kodlar çok arkadaşın işine yarayacaktır...
çok teşekkür ederim...
 
Merhaba,

Konu Murat beyin önerdiği kodla çözümlenmiş. Bende alternatif olarak aşağıdaki kodu öneriyorum. Aralıkları dilediğiniz gibi değiştirebilirsiniz.

Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    ActiveWindow.Zoom = 100
    If Intersect(Target, Range("A1:A50,B1:B50,D1:D50")) Is Nothing Then Exit Sub
    ActiveWindow.Zoom = 300
End Sub
 
Korhan hocam sizede çok teşekkür ederim ,
son verdiğiniz kodları uyguladım , oda güzel sonuç verdi....
Hepiniz hakkınızı helal edin ,

Korhan hocaya - Murat hocaya - Hamitcan hocaya emellerinden dolayı çok teşekkür ederim..

Bu çalışmalar bence çok arkadaşın işine yarayacaktır..

Bu atanamamış öğretmen kardeşinizi çok sevindirdiniz için tekrar teşekkür ederim.
 
Korhan hocanın mesajına ( Âmîn, cümlemizden râzı olsun.. ) yazmışsınızda, yanlış anlamışım..

Murat hocam sizede teşekkür ederim düşünceniz için...
 
Anladım. Ben 31. mesaj için demiştim...

İyi günler...
 
Geri
Üst