• DİKKAT

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

Otomatik satır açma ve gizleme makrosu

  • Konbuyu başlatan Konbuyu başlatan akmlyx
  • Başlangıç tarihi Başlangıç tarihi
Katılım
24 Aralık 2010
Mesajlar
189
Excel Vers. ve Dili
Excel 2010
Dili: Türkçe
Merhaba,
Ekzelde birinci satır boş olunca otomatik olarak bir alttaki satırlar(örneğin 29 adet satır) gizlenecek, sırasıyla birinci satıra yazı yazılınca 2. satır otomatik olarak açılacak eğer 2. satıra da yazı yazılırsa otomatik olarak 3. satır açılacak bu şekilde 29. satıra kadar devam edecek bir makro yazılabilir mi acaba?
Yardımlarınız için şimdiden TEŞEKKÜR EDERİM.
örneğin
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [B1]) Is Nothing Then Exit Sub
If [B1] = "" Then
Rows("2:2").EntireRow.Hidden = True
Else
Rows("2:2").EntireRow.Hidden = False
End If
End Sub

Bu makroladan aynı sayfaya 29 adet yazıp çalıştırmam gerekiyor ama başaramadım.
 
Merhaba,
Kodunuzu bu şekilde dener misiniz?
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("B1:B29")) Is Nothing Or Target.Cells.Count > 1 Then Exit Sub
If Target = "" Then
Rows(Target.Row + 1).EntireRow.Hidden = True
Else
Rows(Target.Row + 1).EntireRow.Hidden = False
End If
End Sub
 
Mucit77 TEŞEKKÜR EDERİM. Ellerinize sağlık makro gayet güzel çalışıyor. Fakat yeni bir ekzel kitabında bu makroyu uygulayınca şöyle bir sorun çıkıyor karşıma:
Aşağıdaki özellikler makro içermeyen çalışma kitaplarına kaydedilemez:
. VB projesi
Dosyayı bu özelliklere kaydetmek için, Hayır’ı tıklatıp ve ardından dosa türü listesinden makro özelliği etkinleştirilmiş bir dosya türü seçiniz. Gibi bir menü açılıyor.
Yeni ekzel kitabının makro özelliğini nasıl etkinleştirebilirim.
Teşekkür ederim.
 
2007 ve sonrası sürümlerde normal excel dosyaları ile makrolu excel dosyaları ayrıldı. Makro içeren excel dosyaları .xlsm uzantılı dosyalardır.
Dosyanızı farklı kaydet dedikten sonra kitap türü kısmından "Makro İçerebilen Excel Çalışma Kitabı (*.xlsm)" seçeneğiyle dosyanızı kaydederseniz makrolar çalışacaktır.
 
Bu şartlara uyan bir makro yazmak mümkün mü acaba?

VERİLER: Sayfa 1'e manuel olarak aşağıdaki veriler girilecek.
Sütunlar
A B C

a 2 100
b 2 105
c 6 103
d 9 102
e 2 101
f 6 100
g 6 104
h 6 103

Örnekte de görüleceği üzere sayfa 1 deki B sütunu makro ile sayfa 2'de yine B Sütununa artarak sıralanacak ama B sütunundaki sayılar eşit olması halinde, eşit sayıların satırları kendi içinde sayfa 1 deki C Sütunundaki sayılara göre büyükten küçüğe doğru makro ile sayfa 2'nin C sütununa sıralanacak böyle bir makro mümkün mü acaba?

Sonuç olarak aşağıdaki tablo makro ile otomatik olarak elde edilmiş olacak.
Sayfa 2'de aşağıdaki tablo oluşacak.
Sütunlar
A B C

b 2 105
e 2 101
a 2 100
g 6 104
c 6 103
h 6 103
f 6 100
d 9 102
 

Ekli dosyalar

Aşağıdaki kodu deneyiniz.
Farklı renkteki kısımları kendinize göre değiştiriniz.
Kod:
Sub KOD()
Set s1 = Sheets("[COLOR="Lime"]Sayfa1[/COLOR]")
Set s2 = Sheets("[COLOR="lime"]Sayfa2[/COLOR]")
s1.Range("[COLOR="Red"]A1:C9[/COLOR]").Copy (s2.Range("[COLOR="red"]A1[/COLOR]"))
s2.Range("[COLOR="red"]A2:C9[/COLOR]").Sort s2.Range("[COLOR="Blue"]B2[/COLOR]"), xlAscending, s2.Range("[COLOR="blue"]C2[/COLOR]"), , xlDescending
End Sub
 
Tekrar Merhaba, elinize sağlık mucit77 ama maalesef olmadı. Bu makro hiçbir değişiklik yapmadı. Acaba ben mi yapamadım? örnek bir excel dosyasında bu kodları yazıp gönderebilir misiniz?
İlginize ve emeğinize TEŞEKKÜR EDERİM.
 
Son düzenleme:
Örnek dosyanız için söylüyorum: Sayfa2'deki verileri silip makroyu çalıştırın.
Değişiklik olduğunu göreceksiniz. Eğer yine olmazsa dosya yükleriz...
 
Makroyu otomatik olarak çalıştırma

Tekrar TEŞEKKÜR EDİYORUM. Elinize sağlık çalışıyor ama bu makroyu otomatik olarak çalışmasını bekliyordum, otomatik çalışmayınca olmuyor sandım. Sizden ricam bu makronun otomatik olarak çalışmasını sağlayabilir misiniz? Tekrar TEŞEKKÜR EDİYORUM.
 
Neye göre otomatik çalışmasını istiyorsunuz. Ne yapınca makro çalışsın?
 
Veriler girilirken makro otomatik olarak sıralamasını yapsın.
 
Dosyanız ekte sayfa1 A:C sütunlarında her değişiklik yaptığınızda makro çalışır.
Ancak dosyanızı bu şekilde kullanmak yerine bir buton yardımıyla vs. manuel kopyalama işlemi yaptırtarak kullanmanızı tavsiye ederim. Çünkü; bu haliyle devamlı işlem yapacağı için işlemcinizi yorar.
İyi çalışmalar...
 

Ekli dosyalar

Mucit77 Elinize sağlık çok harika olmuş tam istediğim gibi. Tekrar tekrar teşekkür ederim.
 
Rica ederim, iyi çalışmalar, iyi akşamlar...
 
Makro komutlarını yazmayı nasıl öğrenebilirim?

Merhaba Mucit77,
Makro komutlarını sizin yazdığınız gibi yazmayı istiyorum. Ne yapabilirim? Bu işin okulu yada kursu var mı? Kitabı var mı? İnternet sitesinde online ders anlatımı var mı? Siz nereden öğrendiniz? Bu konularda kapsamlı bilgi verebilir misiniz? İlginize TEŞEKKÜR EDERİM.
 
Açıkça söylemek gerek ki; bu siteye üye olduğumda excel hakkında bilgim temel fonksiyonlar seviyesindeydi. Peki nerden öğrendim?
Tabi ki; bu siteden.
Birçoklarımızın yaptığı gibi...
Size aşağıdaki linki tavsiye ederim. Aradığınız birçok sorunun cevabı burada...
http://www.excel.web.tr/f177/
 
Son düzenleme:
Makro ile yapılması mümkün mü acaba?

Değerli arkadaşlar merhaba,
Puantaj hazırlamak için makroya ihtiyacım var.
Ekteki puantaj dosyasında da görüleceği üzere, bilgi girişine yazdığım her tarih puantaj cetveli sayfasındaki tarihi otomatik olarak bularak parantez içindeki ilgili harfleri yazması gerekiyor.
Örneğin bilgi girişi bölümündeki haftalık tatil kısmına pazartesi yazınca puantaj cetveli sayfasında -ayın 5'i pazartesi olduğunu varsayalım- ayın 5'ine ve her pazartesi günlerine HT otomatik olarak yazacak,
Diyelim ki bir işçi ayın 11'i ile 20'si arasında rapor aldı. Sıhhi izin(Rapor) kısmına ilgili tarihi girince puantaj cetveli kısmında ilgili satırın 11'inden 20'sine kadar R otomatik olarak yazacak. Diğer istenen şartlar dosyada mevcut.
Not: aynı işçi aynı ay içinde birden fazla rapor veya birden fazla izin kullanabiliyor bundan dolayı herbir sutundan 2 adet hazırladım.
böyle bir makro mümkün mü acaba.
İlginiz için şimdiden teşekkür ederim.
 

Ekli dosyalar

Otomatik Satır gizleme makrosuna bu özelliği ekleyebilir miyiz acaba?
B5 hücresindeki sayıyı sildiğimde Sayfa1 deki 6. satır otomatik gizlendiği gibi Sayfa2, Sayfa3, Sayfa4 ve Sayfa5 deki 6. satır otomatik gizlenmeli veya Sayfa1 deki B5 hücresine herhangi bir sayı yazdığım zaman 6. satırın tamamı otomatik olarak görünür hale geldiği gibi, Sayfa2, Sayfa3, Sayfa4 ve Sayfa5 deki 6. satır otomatik olarak görünür hale gelmeli bu işlem aynı şekilde 35. satıra kadar devam etmesi gerekiyor.
İlginiz için Teşekkür ederim.
 
Sub Makro1()

ActiveSheet.Rows("2:200").Hidden = False
ActiveSheet.Rows("5:100").Hidden = True

End Sub

Yukardaki gibi bir makrom mevcut ben satır aralığını yeniden gizlemek istediğimde ki örnekte bu satır (5) den başlıyor ben bu değerin aktif sayfadaki (B1) hücresinden almasını istiyorum
 
Geri
Üst