Chuyển dữ liệu nhiều hàng thành 1 cột

Liên hệ QC

Mydiem13031994

Thành viên mới
Tham gia
29/10/19
Bài viết
18
Được thích
1
Dạ anh chị nào biết cách chuyển dữ liệu từ nhiều hàng thành 1 cột liên tục chỉ giùm em với ạ?
-2
0
16
...
56
33

12
0
1

Em cảm ơn trước ạ!
1575538488246.png
 

File đính kèm

  • 1575538351347.png
    1575538351347.png
    49.8 KB · Đọc: 3
Dạ file đây ạ. hi. giúp em với :)
 

File đính kèm

  • Du lieu.xls
    112.5 KB · Đọc: 14
' chủ yếu là cái công thức áp mảng 1 chiều qua 2 chiều thôi
a = Sheet1.Range("A1").CurrentRegion.Value
soDong = UBound(a)
soCot = UBound(a, 2)
Redim b(1 to soDong*soCot, 1 to 1)
For i = 1 to soDong*soCot
b(i, 1) = a( (i-1) \ soCot + 1, (i - 1) Mod soCot + 1) ' công thức áp chỗ này
Next i
Sheet2.Range("A1").Resize(UBound(b), 1) = b
 
Nhờ cao thủ trong nhóm giúp mình chuyển đổi hàng sang cột file này với ạ
 
Nhờ cao thủ trong nhóm giúp mình chuyển đổi hàng sang cột file này với ạ
Góp ý cho bạn:
1/ Nếu thành viên nào biết thì sẽ vào giúp cho bạn mà không cần dùng từ cao thủ trong bài viết.
2/ Nội dung trong File của bạn khác hoàn toàn so với File của chủ Topic, vì vậy bạn nên mở Topic để việc trả lời cho bạn được tập trung hơn.
3/ Về nội dung bạn cần diễn giải cụ thể rỏ ràng là lấy dữ liệu của sheet nào chuyển qua sheet nào? Bạn hỏi bâng quơ quá nên chẳng ai hiểu bạn muốn kết quả ở sheet nào?
 
Lần chỉnh sửa cuối:
' chủ yếu là cái công thức áp mảng 1 chiều qua 2 chiều thôi
a = Sheet1.Range("A1").CurrentRegion.Value
soDong = UBound(a)
soCot = UBound(a, 2)
Redim b(1 to soDong*soCot, 1 to 1)
For i = 1 to soDong*soCot
b(i, 1) = a( (i-1) \ soCot + 1, (i - 1) Mod soCot + 1) ' công thức áp chỗ này
Next i
Sheet2.Range("A1").Resize(UBound(b), 1) = b
Dạ em cảm ơn ạ!
 
Bạn thử:
PHP:
With Selection
        a = .Value
        ReDim b(1 To UBound(a) * UBound(a, 2), 1 To 1)
        For i = 1 To UBound(a)
            For j = 1 To UBound(a, 2)
                If Len(a(i, j)) Then k = k + 1: b(k, 1) = a(i, j)
            Next: Next
    End With
    Range("AB4").Resize(k).Value = b
Dạ a ơi, A có thể chỉ chi tiết giùm em cách sử dụng code này được không ạ? Em ko rành code nên ko biết bỏ vô đâu để chạy ra cái này. Em cảm ơn a trước ạ.
 
B
Dạ a ơi, A có thể chỉ chi tiết giùm em cách sử dụng code này được không ạ? Em ko rành code nên ko biết bỏ vô đâu để chạy ra cái này. Em cảm ơn a trước ạ.
Bạn xem file đính kèm. Bấm vào mũi tên sẽ có kết quả. Muốn xem code thì bấm "Alt+F11" nhé.
 

File đính kèm

  • Du lieu H2C.xlsm
    75 KB · Đọc: 9
Dạ a ơi, A có thể chỉ chi tiết giùm em cách sử dụng code này được không ạ? Em ko rành code nên ko biết bỏ vô đâu để chạy ra cái này. Em cảm ơn a trước ạ.
Bạn dùng Code dưới linh hoạt hơn:
PHP:
Sub Test()
    Dim a, b, i, j, k, Nguon As Range, Dich As Range
    Set Nguon = Application.InputBox(prompt:="Quet chon vung du lieu can chuyen ", Type:=8)
    With Nguon
        a = .Value
        ReDim b(1 To UBound(a) * UBound(a, 2), 1 To 1)
        For i = 1 To UBound(a)
            For j = 1 To UBound(a, 2)
                If Len(a(i, j)) Then k = k + 1: b(k, 1) = a(i, j)
            Next: Next
    End With
    Set Dich = Application.InputBox(prompt:="Chon 1 Cell de gan du lieu", Type:=8)
    Dich.Resize(k).Value = b
End Sub
 

File đính kèm

  • Dulieu-new.xls
    256.5 KB · Đọc: 20
Bạn dùng Code dưới linh hoạt hơn:
PHP:
Sub Test()
    Dim a, b, i, j, k, Nguon As Range, Dich As Range
    Set Nguon = Application.InputBox(prompt:="Quet chon vung du lieu can chuyen ", Type:=8)
    With Nguon
        a = .Value
        ReDim b(1 To UBound(a) * UBound(a, 2), 1 To 1)
        For i = 1 To UBound(a)
            For j = 1 To UBound(a, 2)
                If Len(a(i, j)) Then k = k + 1: b(k, 1) = a(i, j)
            Next: Next
    End With
    Set Dich = Application.InputBox(prompt:="Chon 1 Cell de gan du lieu", Type:=8)
    Dich.Resize(k).Value = b
End Sub
Dạ em cảm ơn :) em đã làm được rồi ạ.
Bài đã được tự động gộp:

Bạn dùng Code dưới linh hoạt hơn:
PHP:
Sub Test()
    Dim a, b, i, j, k, Nguon As Range, Dich As Range
    Set Nguon = Application.InputBox(prompt:="Quet chon vung du lieu can chuyen ", Type:=8)
    With Nguon
        a = .Value
        ReDim b(1 To UBound(a) * UBound(a, 2), 1 To 1)
        For i = 1 To UBound(a)
            For j = 1 To UBound(a, 2)
                If Len(a(i, j)) Then k = k + 1: b(k, 1) = a(i, j)
            Next: Next
    End With
    Set Dich = Application.InputBox(prompt:="Chon 1 Cell de gan du lieu", Type:=8)
    Dich.Resize(k).Value = b
End Sub
Hi. Em mới mở cái file anh gửi, nhìn hay quá anh. Em cảm ơn anh nhiều nhé :)
 
Web KT
Back
Top Bottom