Userform - Sayfaları Göster / Gizle

Çözüldü Userform - Sayfaları Göster / Gizle

  • Konuyu başlatan Konuyu başlatan zcn43
  • Başlangıç tarihi Başlangıç tarihi

zcn43

Normal Üye
Excel Versiyonu
Excel 2016
Excel Sürümü
64 Bit
Excel Dili
Türkçe
İyi günler arkadaşlar.
Ekteki dosyada Geçmiş dönemlere ait puantaj cetveli sayfaları ve Güncel olan puantaj cetveli sayfam var(renkli iki sayfa). Geçmiş dönemlere ait olan sayfaları gizlemek ve istediğimde görüntülemek sadece belirlediğim iki sayfanın görünür kalmasını , belirlediğim sayfalar haricinde yeni sayfa oluşturduğumda oluşturulan her sayfanın gizlenmesini ve resim örneğinde gösterdiğim gibi userformda oluşturulan listeye otomatik eklenmesini sağlamak istiyorum. Yardımcı olursanız memnun olurum.

.Ekli dosyayı görüntüle 7438
 

Ekli dosyalar

  • PUANTAJ cetveli.xlsm
    PUANTAJ cetveli.xlsm
    143.7 KB · Görüntüleme: 6
  • Adsız.webp
    Adsız.webp
    14.5 KB · Görüntüleme: 41
Moderatörün son düzenlenenleri:
Sayın @Ömer BARAN hocam gece yazdığınız mesajda çok haklısınız. Ben kod üzerinde hücre yollarını güncelleyerek başka cetvellere kodu uygulayabilirim diye düşünmüştüm en baştan. O yüzden son şekilli bir cetvel oluşturmamış kod tarafına yoğunlaşmıştım. Aşagıda puantaj cetvelimin artık en son hali ve içerisinde userfom ekli hali var. Puantaj aktarma kodunu buna uyarlayıp userform üzerindeki isteklerimide bu cetvelde yapabilirseniz. Bu son sorum olacak cetvelle ilgili.
 

Ekli dosyalar

Sayın @ozcan_26 .

Ekteki dosyayı inceleyin, deneyin.

Kullanılan kodlar aşağıda gösterilmiştir.

C:
Görüntülemek için giriş yapmanız gerekmektedir.
(27 satır)
C:
Görüntülemek için giriş yapmanız gerekmektedir.
(102 satır)
Mükemmel olmuş hocam ellerinize sağlık. Tek sorun ilgili aya gönder dediğimde ay yılı seçmiş olmama rağmen ilgili ay sayfasına gönderme yapmıyor. Ay Yıl Seçilmemiş uyarısı veriyor.
 
Hücrelerin konumlarını sonradan değiştirmişim demekki.
Ayrıca userformdaki ay adlarına yönelik AD TANIMLAMASInı da sonradan silmişim.

Önceki cevabı da düzelttim (3 yerde sütun adı değişti, ay ve yıl bilgisi C1 ve C2'den değil B1 ve B2 den alınacak idi)
ve eklediğim belgeyi de yeniledim.

Safayı yenileyip gönderdiğim belgeyi tekrar indirin.

.
 
LISTE_AKTAR_BRN isimli kodun End Sub satırının hemen üstündeki
ANA.[A5:AL5].AutoFilter satırını silin veya sol başına TEK TIRNAK işareti ekleyerek etkisiz hale getirin.

Filtre gerekli olabilir diye eklemiştim, gerekmiyor demekki.

.
 
LISTE_AKTAR_BRN isimli kodun End Sub satırının hemen üstündeki
ANA.[A5:AL5].AutoFilter satırını silin veya sol başına TEK TIRNAK işareti ekleyerek etkisiz hale getirin.

Filtre gerekli olabilir diye eklemiştim, gerekmiyor demekki.

.
Sayın @Ömer BARAN hocam yardımlarınız için ne kadar teşekkür etsem az. Uzun zamandır istediğim iş gerçekleşti sayenizde. Her şey için çok teşekkür ederim. İyi günler.
 
Sayın @Ömer BARAN hocam merhaba. İki tane sorunum var müsait zamanınızda bakabilir misiniz ?
Birincisi Günlük listeye AnaSayfada olmayan bir tarih ve sicil no girdiğimde önceden olduğu gibi msjbox kutusu gelmiyor.Aktarım yapmadan sicil = Application.Match(veri(sat, 1), Application.Transpose(siciller), 0) bu kodda Run-time error '13" hatası veriyor,

Diğer sorunum ise; örnek belgedeki gibi listeyi SAP programından alıyorum, günlük listede ya da başka bir dosyada kırpılacak satır sütunları ayarlıyorum, veri türlerini ayarlıyorum yani birebir sizin son attığınız dosyadaki biçime göre ayarlıyorum hatta bazen hata vermediği şekli makro kaydı yapıyorum ama bazen sorunsuz çalışırken bazen ne yaparsam yapayım aktarma yapmadan
sicil = Application.Match(veri(sat, 1), Application.Transpose(siciller), 0) yine bu kodda hata veriyor. Anasayfa ile günlük liste arasında veri türü uyuşmazlığından mı kaynaklanıyor bu durum acaba. Günlük listede ne yapsak bu durumdan kurtulabilirim. Teşekkürler.
 

Ekli dosyalar

-- İki belge de açıkken, SAP'tan alınan Excel belgesinde, alt taraftan Liste sayfasının adına fareyle sağ tıklayıp,
TAŞI veya KOPYALA deyip, PUANTAJ belgesine aktarın. Genel Liste sayfasına gerek kalmadığına göre Genel Liste sayfasını silin,
Artık yukarıda belirttiğim gibi kopyaladığınız Liste isimli sayfa veri kaynağı olarak kullanılacak.
-- Liste ismini taşıyan sayfanın veri başlangıç satırı ve sütun yapısı/sütun başlıklarının sabit olduğunu varsayıyorum.
Bu yapı sabit değilse koda birkaç satırlık ilave yapılarak BAŞLIK METNİnden hareketle ilgili alanların bulunması gerekir.
-- Userform kodlarındaki "Günlük Liste" kısımlarını "Liste" olarak değiştirin.
-- Module1'deki kodların tümünü silip, yerine aşağıdaki kodları yapıştırın.

Unutmamanız gereken şey, ANASAYFA'da, B sütununda olan sicillere göre veri alındığı,
ANASAYFA'nın B sütunundaki sicil listesinde hangileri varsa o sicile ait veriler işlenecektir.

C:
Görüntülemek için giriş yapmanız gerekmektedir.
(112 satır)
 
-- İki belge de açıkken, SAP'tan alınan Excel belgesinde, alt taraftan Liste sayfasının adına fareyle sağ tıklayıp,
TAŞI veya KOPYALA deyip, PUANTAJ belgesine aktarın. Genel Liste sayfasına gerek kalmadığına göre Genel Liste sayfasını silin,
Artık yukarıda belirttiğim gibi kopyaladığınız Liste isimli sayfa veri kaynağı olarak kullanılacak.
-- Liste ismini taşıyan sayfanın veri başlangıç satırı ve sütun yapısı/sütun başlıklarının sabit olduğunu varsayıyorum.
Bu yapı sabit değilse koda birkaç satırlık ilave yapılarak BAŞLIK METNİnden hareketle ilgili alanların bulunması gerekir.
-- Userform kodlarındaki "Günlük Liste" kısımlarını "Liste" olarak değiştirin.
-- Module1'deki kodların tümünü silip, yerine aşağıdaki kodları yapıştırın.

Unutmamanız gereken şey, ANASAYFA'da, B sütununda olan sicillere göre veri alındığı,
ANASAYFA'nın B sütunundaki sicil listesinde hangileri varsa o sicile ait veriler işlenecektir.

C:
Görüntülemek için giriş yapmanız gerekmektedir.
(112 satır)
İyi akşamlar hocam. Denemeyi şimdi yapabildim. Dediğiniz gibi ham liste üzerinde hiç değişiklik yapmadığımda harika çalışıyor. Ama bazı düzenlemeler yapabilmem için en azından sütunlarda eksiltme yapmam lazım. Örneğin Giriş zamanlarının çıkış zamanlarında görüldüğü gibi durumlarda yer değiştirme gibi işlemleri yapabilmem için taşıdığım listenin örnekteki gibi olması için mümkünse yardımınızı rica ediyorum. Ham liste üzerinden C ve O arası, Q ve Z arası, AD ve AO arasındaki sütunları silmem lazım. Bir de farklı sicil ve tarihlerde msjbox uyarısı alamıyorum . Teşekkürler.
 

Ekli dosyalar

Üst