• DİKKAT

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

Karışık bir tablo oluşturmaya çalışıyorum

Katılım
15 Nisan 2008
Mesajlar
3
Excel Vers. ve Dili
2013 Türkçe
Merhabalar

İşin içinden çıkamadım, çalıştığım yer ile ilgili biraz karışık bir tablo oluşturmak istiyorum. Tam olarak şu şekilde

Şimdi 5 adet personel var. P1,P2,P3,P4,P5 olarak isimlendirdiğim. Bunlar İŞ1,İŞ2,İŞ3,....,İŞ100 olmak üzere yüz farklı iş türü üzerine çalışıyorlar. Mesela P3 personeli İŞ4'ten 2, İŞ9'dan 5 adet iş yapmış olsun.

https://i.hizliresim.com/r2mXnB.jpg

Resimde görüldüğü basit bir şekilde gibi girebiliyorum. Ancak iş bunları sunuma geldiği zaman 100'e yakın sütun olduğu için estetik olmuyor. Ben her personelin yapmış olduğu iş sayısını üst resimdeki gibi girdiğimde sayfanın ayrı bir kısmına daha sade bir şekilde yapmış oldukları iş ve iş sayısını göstermek istiyorum. Bazen 10 bazen 20 farklı iş oluyor. İş sayıları değişiyor. Yani özet olarak satır ve sütunlardan personelin adını, yapmış olduğu işin adını ve o işi kaç defa yapmış olduğunun sayısını ayıklayıp bana özetleyebilecek bir sayfa oluşturmak istiyorum.

https://i.hizliresim.com/pWmk4a.jpg
 
Merhaba, foruma hoşgeldiniz.

Sorularınızı ekran görüntüsü yerine örnek belge ile desteklemeniz sonuca ulaşmanızı hızlandıracaktır.

Örnek belge özellikleri ve örnek belge yükleme yöntemi konusundaki açıklamalar cevabımın altındaki İMZA bölümünde var.

Gerçek belgenizin yapısı aynen eklediğiniz ekran görüntüsündeki gibiyse
(satır/sütun yapısı, verilerin/başlıkların konumları gibi);

-- Sayfaya düğme, şekil/metin kutusu gibi bir adet nesne ekleyin,
-- Alt taraftan ilgili sayfa adına fareyle sağ tıklayıp KOD GÖRÜTÜLEyi seçin,
-- Açılan VBA ekranında sağdaki alana aşağıdaki kod'u yapıştırın,
-- Sayfaya eklediğiniz nesneye fareyle sağ tıklayıp MAKRO ATAyı seçin,
-- Açılan küçük ekranda ÖZETLEyi seçip işlemi onaylayın.

Artık bu nesneye fareyle tıklayarak sonuç alabilirsiniz.
.
Kod:
[B]Sub [COLOR="blue"]OZETLE[/COLOR]()[/B]
Range("H11:L" & Rows.Count).ClearContents
For p = 2 To 6
    For i = 2 To 101
        If Cells(p, i) <> "" Then Cells(Cells(Rows.Count, p + 7).End(3).Row + 1, p + 7) = Cells(1, i) & " = " & Cells(p, i)
    Next
Next
Columns("H:L").AutoFit: MsgBox "İşlem tamamlandı.", vbInformation, "..::.. Ömer BARAN ..::.."
[B]End Sub[/B][/B]
 
Yarım saattir uğraşıyordum Ömer Bey elinize sağlık. Daha önce de başka bir dosyayı ben hazırlarken siz gönderdiniz. Daha pratik olmaya çalışacağım. :)
 
Yarım saattir uğraşıyordum Ömer Bey elinize sağlık. Daha önce de başka bir dosyayı ben hazırlarken siz gönderdiniz. Daha pratik olmaya çalışacağım. :)
Elim boş idi hazırlayıverdim Sayın dellerlim.
Memlekete, baba toprağına selam olsun.
.
 
Kod'daki p + 7 kısmını p + 6 olarak değiştirip deneyin.
p değerinin 1'den değil, 2'den başladığını dikkate almamışım demekki.
.
 
Teşekkür ederim mükemmel şekilde çalışıyor. :bravo:
 
Geri
Üst