Xin Code đổi dữ liệu ngang thành dọc (1 người xem)

Người dùng đang xem chủ đề này

hungdiep85

Thành viên thường trực
Tham gia
1/6/09
Bài viết
218
Được thích
23
Giới tính
Nam
Chào các Anh Chị và lời chúc sức khỏe.

Trong File Sheet (Du lieu Goc)
Từ cột F (Tieu De 05) có 9 loại (AA+01 đến AA+09) sẽ đổi thành tiêu dề hàng ngang,
Từ cột (G:S) có 13 loại (San Pham 01 đến San Pham 13) sẽ đổi thành tiêu dề hàng dọc ở cột F (Tieu De 05). Và dữ liệu còn lại cũng được đổi theo.

Em cảm ơn các Anh Chị trước àh...
 

File đính kèm

có ai giúp em bài nay với , huhu.
 
Upvote 0
có ai giúp em bài nay với , huhu.

Sao thiết kế file kỳ quá nên viết code của khó theo mình dựa vào nguyên tắc 9 dòng trong file bạn mà viết code

[GPECODE=vb]
Sub Ktra()
Dim iC As Long, iR As Long, i As Long
Dim sRange, aC As Long, bC As Long, dong As Long, idong As Long
Dim KQ, k As Long
sRange = Sheets("Du lieu Goc").Range("B1:S19").Value
ReDim KQ(1 To UBound(sRange, 2) * 10, 1 To 20)
For k = 1 To 2
For i = 1 To 13
For iC = 1 To 4
KQ(i + bC, iC) = sRange(2 + dong, iC)
Next
iR = iR + 1
KQ(iR, 5) = sRange(1, i + 5)
Next
For i = 2 + dong To 10 + idong
For iC = 2 To 14
KQ(iC + bC - 1, i - aC + 4) = sRange(i, iC + 4)
Next iC
Next i
bC = bC + 13
aC = aC + 9
dong = dong + 9
idong = idong + 9
Next k
With Sheets("Du lieu Doi")
.Range("B2:O300").ClearContents
.Range("B2").Resize(UBound(KQ), 20).Value = KQ
End With
End Sub


[/GPECODE]

Xem coi đúng không
 
Upvote 0
Sao thiết kế file kỳ quá nên viết code của khó theo mình dựa vào nguyên tắc 9 dòng trong file bạn mà viết code

[GPECODE=vb]
Sub Ktra()
Dim iC As Long, iR As Long, i As Long
Dim sRange, aC As Long, bC As Long, dong As Long, idong As Long
Dim KQ, k As Long
sRange = Sheets("Du lieu Goc").Range("B1:S19").Value
ReDim KQ(1 To UBound(sRange, 2) * 10, 1 To 20)
For k = 1 To 2
For i = 1 To 13
For iC = 1 To 4
KQ(i + bC, iC) = sRange(2 + dong, iC)
Next
iR = iR + 1
KQ(iR, 5) = sRange(1, i + 5)
Next
For i = 2 + dong To 10 + idong
For iC = 2 To 14
KQ(iC + bC - 1, i - aC + 4) = sRange(i, iC + 4)
Next iC
Next i
bC = bC + 13
aC = aC + 9
dong = dong + 9
idong = idong + 9
Next k
With Sheets("Du lieu Doi")
.Range("B2:O300").ClearContents
.Range("B2").Resize(UBound(KQ), 20).Value = KQ
End With
End Sub


[/GPECODE]

Xem coi đúng không



Dạ đúng quá là đúng luôn rồi anh ơi. (File Mau 03)
Nhưng sheet Dữ liệu Gốc mà có thêm dữ liệu thì chưa đổi thêm được.
Bên sheet Dữ liệu Gốc (Tieu De 05)(AA+01 đến AA+09 là 1 bộ dữ liệu) mỗi lần em đao dữ liệu về là trong 1 file có nhiều bộ dữ liệu tiếp xuống y như vậy, điểm khác của mỗi bộ dữ liệu là có bộ có (AA+07) và có bộ không có (AA+07).
nếu có thể đổi qua dữ liệu dọc mà coi đúng tiêu đề mối cho dữ liệu vào thì tốt qua.

ah cái dữ liệu là em đao từ hệ thống xuống, thiết kế nó là như vậy. em cũng khổ với nó lắm rồi. Hihi...

Em cảm ơn anh....
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0

Bài viết mới nhất

Back
Top Bottom