لقد وضعت ملفاً بهذا الموضوع قبل ان ترفع مثالك
ارجو ان يكون المطلوب
الكود
Option Explicit
Sub Copy_By_Choise()
Rem Created By Salim Hasbays On 1/3/2020
Application.ScreenUpdating = False
On Error GoTo End_Me
Dim S As Worksheet, T As Worksheet
Dim i%, col%, X%, Last%, m%, k%, Howmay_row%
Dim Title_arr
Set S = Sheets("Source"): Set T = Sheets("Target")
col = T.Cells(2, Columns.Count).End(1).Column
If col = 1 Then col = 500
Howmay_row = S.Range("G2")
Title_arr = Application.Transpose(S.Range("a1:d1"))
Title_arr = Application.Transpose(Title_arr)
Last = S.Cells(Rows.Count, 2).End(3).Row
T.Range("A2").Resize(Last, col).Clear
m = 3: k = 1
For i = 2 To Last
For X = 0 To 3
T.Cells(m, k).Offset(, X) = _
S.Cells(i, 1).Offset(, X)
Next X
m = m + 1
If m Mod (Howmay_row + 3) = 0 Then m = 3: k = k + 5
Next i
col = T.Cells(3, Columns.Count).End(1).Column
For k = 1 To col Step 5
Cells(2, k).Resize(, 4) = Title_arr
With T.Range("B2").Offset(, k - 1).CurrentRegion
.Interior.ColorIndex = 6
.Borders.LineStyle = 1
.InsertIndent 1
End With
Next
Erase Title_arr: Set S = Nothing: Set T = Nothing
End_Me:
Application.ScreenUpdating = True
End Sub
الملف مرفق
Split_table.xlsm