1,2,3,4 numaralı farklı sayfalardan veri çekerek "Verimlilik" sayfasında bir tablo oluşturmaya çalışıyorum .... Tablo oluşturmaya çalışırken 8 sütun var. Bunlardan biri tarih. Tarih, yalnızca G4 hücresinin bir hücresinde ve her sayfadaki aynı noktadadır. Diğer sütunlar, satır 9'dan başlayarak, B, C, D, E, F, O ve Q sütunlarından gelir. 1 ila 2 ila 3 arası sayfalardan giderken sütunların boyutu değişebilir. Sadece verileri kopyalamak istiyorum ve başka bir şey yok. Satır 20'ye kadar bazı biçimlendirmeler vardır, ancak yalnızca veri olduğu kadar sabit sayıda satır kopyalamak istemez. Bu bilgiyi "Verimlilik" sayfasına yapıştırdığımda, sadece verileri değil, biçimlendirmeyi istiyorum. Ayrıca tarih sütununun uzunluğunu diğer veri noktalarının uzunluğuna ve alındığı "tarih" sayfasına eşleştirmek istiyorum. Ayrıca, bir satırın sadece bir kez, tablonun ilk satırında oluşturulduğunu ve öğelerin "Tarih" ve B, C, D, E, F, O ve Q sütunlarının 8. satırlarını da istiyorum. her "tarih" sayfasında aynıdır, ancak sadece "Verimlilik" sayfasındaki tablo başlığı için bir kez gerekir. Bunu anlayabilmem için bana yardım edebilir mi lütfen?Excel'de tablo oluşturma Farklı Sayfalardaki Verileri Çekerek
Teşekkür
'Sub DataTable()
Dim wsTable As Worksheet
Set wsTable = Worksheets("Efficiency") 'change as needed
Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
Select Case ws.Name
Case Is = "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15"
With ws
Dim rngData As Range
Set rngData = Union(.Range("B:F"), .Range("O:O"), .Range("Q:Q"))
Dim lRow As Long
Dim rCheck As Range
For Each rCheck In Intersect(rngData, .Rows(1))
If .Cells(.Rows.Count, rCheck.Column).End(xlUp).Row > lRow Then
lRow = .Cells(.Rows.Count, rCheck.Column).End(xlUp).Row
End If
Next
Dim dDate As Date
dDate = .Range("G4").Value
With wsTable
.Range("A" & .Rows.Count).End(xlUp).Offset(1).Resize(lRow, 1).Value = dDate
ws.Range("B9:F" & lRow).Copy
.Range("B" & .Rows.Count).End(xlUp).Offset(1).PasteSpecial x1PasteValues
ws.Range("O9:O" & lRow).Copy
.Range("O" & .Rows.Count).End(xlUp).Offset(1).PasteSpecial x1PasteValues
ws.Range("Q9:O" & lRow).Copy
.Range("Q" & .Rows.Count).End(xlUp).Offset(1).PasteSpecial x1PasteValues
End With
End With
End Select
Next
End Sub
'
Çok güzel! Teşekkür ederim! Güzel çalış – Kish