Chuyển cột thành dòng

Liên hệ QC

hongphuong1997

Thành viên tiêu biểu
Tham gia
12/11/17
Bài viết
717
Được thích
288
Giới tính
Nữ
Em nhờ các anh chị giúp đỡ như file đính kèm
Em xin cảm ơn ạ
 

File đính kèm

  • Chuyển cột thành hàng cách dòng.xlsx
    9.6 KB · Đọc: 14
Không cố định thì bạn cho biết nó nằm trong khoảng nào hay bất kỳ?
Bác @befaint ơi như này nhé
Ví dụ như trong file cháu gửi đó là cách 3 dòng thì lấy
và nó sẽ lấy vô hạn dữ liệu ở cột A
và trả về số cột theo mong muốn
À cháu quên (Bất kỳ) bác ơi
 
Upvote 0
Search Google được cái này:

Mã:
Sub RowToColumnTranspose()
Dim rng As Range
Dim I As Long, numcol As Integer
    numcol = 6    
    I = 2
    Set rng = Range("A1")
    While rng.Value <> ""
        I = I + 1
        rng.Resize(numcol).Copy
        Range("D" & I).PasteSpecial Transpose:=True
        Set rng = rng.Offset(numcol)
    Wend
End Sub

thay đổi số cột ở dòng numcol = 6
 
Lần chỉnh sửa cuối:
Upvote 0
Thử cái này:

Mã:
Sub RowToColumnTranspose()
Dim rng As Range
Dim I As Long, numcol As Integer
    numcol = 6    
    I = 2
    Set rng = Range("A1")
    While rng.Value <> ""
        I = I + 1
        rng.Resize(numcol).Copy
        Range("D" & I).PasteSpecial Transpose:=True
        Set rng = rng.Offset(numcol)
    Wend
End Sub

thay đổi số cột ở dòng numcol = 6
Em chẳng biết xưng hô như nào với anh (Bởi vì em không hiểu rõ)
Nhưng em cảm ơn anh rất nhiều
Chúc anh vui vẻ, hạnh phúc và may mắn
Chúc anh nữa là thành đạt hết tất cả anh nhé.
 
Upvote 0
Search Google được cái này:

Mã:
Sub RowToColumnTranspose()
Dim rng As Range
Dim I As Long, numcol As Integer
    numcol = 6   
    I = 2
    Set rng = Range("A1")
    While rng.Value <> ""
        I = I + 1
        rng.Resize(numcol).Copy
        Range("D" & I).PasteSpecial Transpose:=True
        Set rng = rng.Offset(numcol)
    Wend
End Sub

thay đổi số cột ở dòng numcol = 6
Bác
hhoang_56
ơi, nếu như trong trường hợp lấy cách dòng như thế này thì phải làm như nào hở bác
 

File đính kèm

  • Chuyển cột thành hàng cách dòng.xlsx
    9.9 KB · Đọc: 26
Upvote 0
Bác
hhoang_56
ơi, nếu như trong trường hợp lấy cách dòng như thế này thì phải làm như nào hở bác
Em thử cái này.
Mã:
Sub chuyendulieu()
    Const socot As Long = 5
    Const buocdem As Integer = 2
    Dim i As Long, lr As Long, arr, kq, a As Long, b As Long, c As Long
    With Sheets("sheet1")
        lr = .Range("B" & Rows.Count).End(xlUp).Row
        arr = .Range("A1:B" & lr).Value
        ReDim kq(1 To UBound(arr), 1 To socot)
        For i = 1 To UBound(arr) Step buocdem
            a = Int(c / socot) + 1
            b = (c) Mod socot + 1
            c = c + 1
            kq(a, b) = arr(i, 2)
        Next i
        .Range("E3").Resize(1000, 20).ClearContents
        .Range("E3").Resize(a, socot).Value = kq
   End With
End Sub
 
Upvote 0
Em thử cái này.
Mã:
Sub chuyendulieu()
    Const socot As Long = 5
    Const buocdem As Integer = 2
    Dim i As Long, lr As Long, arr, kq, a As Long, b As Long, c As Long
    With Sheets("sheet1")
        lr = .Range("B" & Rows.Count).End(xlUp).Row
        arr = .Range("A1:B" & lr).Value
        ReDim kq(1 To UBound(arr), 1 To socot)
        For i = 1 To UBound(arr) Step buocdem
            a = Int(c / socot) + 1
            b = (c) Mod socot + 1
            c = c + 1
            kq(a, b) = arr(i, 2)
        Next i
        .Range("E3").Resize(1000, 20).ClearContents
        .Range("E3").Resize(a, socot).Value = kq
   End With
End Sub
Chuẩn quá anh @snow25 ơi
Em cảm ơn anh nhiều nhé
Chúc anh vui vẻ
 
Upvote 0
Web KT
Back
Top Bottom