• DİKKAT

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

özet tablo sonucundan düz tablo yapmak

Katılım
26 Mart 2012
Mesajlar
18
Excel Vers. ve Dili
2010, türkçe
Bir müşterimiz farklı bir programdan özet tablo biçiminde bir tablo gönderiyor. Genellikle satırda 5 veri, sütunda ise 30 veri buluyor..
Bunu normal tablo haline nasıl getirebilirim..
 
Örnek olarak ekte bir dosya mevcut. Sayfa1 deki veriyi sayfa2 deki veri haline en kolay nasıl getiririz. Örneğimde sayfa1 de tarih sütunları arasında boşluk yer almakta ama onu düz hale getirdikten sonra silerek çözerim. önemli olan düz tablo haline getirmek..
 

Ekli dosyalar

.

Dosyanız ekte.

Önce boş sütunları kaldırın. Buradan:

http://www.excelgurusu.com/pivot-table-ozet-tablo/

PivotTable ÖzetTablotersi dosyasında açıklandığı şekilde, bir Özet Tablo - Pivot Table yapın.

Dosyanızda bu yapılmıştır. En son dolu hücreye (dosyanızda 36) çift tıklayın. Sonra oluşan tabloda kendinize göre gerekli düzeltmeleri yapın.

.
 

Ekli dosyalar

Alternatif makro ile.

Kod:
Option Explicit
Sub tablo()
Dim a(), b(), S1 As Worksheet, S2 As Worksheet
Dim Say  As Long, X  As Long, Y As Long
Set S1 = Sheets("Sayfa1"): Set S2 = Sheets("Sayfa2")
a = S1.Range("A1:R" & S1.Cells(Rows.Count, 1).End(3).Row).Value
ReDim b(1 To UBound(a) * 8, 1 To 4)
For Y = 4 To UBound(a, 2) Step 2
    For X = 2 To UBound(a)
        Say = Say + 1
        b(Say, 1) = a(X, 1)
        b(Say, 2) = a(X, 2)
        b(Say, 3) = a(1, Y)
        b(Say, 4) = a(X, Y)
    Next X
Next Y
Application.ScreenUpdating = False
    S2.Range("A2:D" & Rows.Count).ClearContents
    If Say > 0 Then
        S2.[B2].Resize(Say).NumberFormat = "@"
        S2.[C2].Resize(Say).NumberFormat = "dd.mm.yyyy"
        S2.[D2].Resize(Say).NumberFormat = "#,##0.00"
        S2.[A2].Resize(Say, 4) = b
    End If
Application.ScreenUpdating = True
S2.Select
MsgBox "İşlem tamam...", vbInformation, Environ("Username")
End Sub
 

Ekli dosyalar

teşekkürler
 
Geri
Üst