Xin hỏi các bạn cách chuyển nhiều hàng thành 1 cột (1 người xem)

Liên hệ QC

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

toankogay

Thành viên mới
Tham gia
5/1/12
Bài viết
7
Được thích
0
Mình có rất nhiều hàng ví dụ từ ô b4:Y100 bây giờ mình muốn chuyển tất cả các hàng thành 1 cột dữ liệu thì làm như thế nào, rất mong được các bạn giúp đỡ
 
Bạn thử với macro sau

PHP:
Option Explicit
Sub CopyValueInRowsToColumns()
 Dim Cls As Range, Rng As Range, MyColor As Byte
 
 Columns("A:A").ClearContents
 Randomize:             MyColor = 34 + Int(9 * Rnd())
 [A1].Interior.ColorIndex = MyColor:     [A1].Value = "GPE.COM"
 For Each Cls In Range([B4], [B65500].End(xlUp))
   Set Rng = Range(Cls, Cells(Cls.Row, "iU").End(xlToLeft))
   Rng.Copy
   Range("A65500").End(xlUp).Offset(1).Select
   Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=True
 Next Cls
 Application.CutCopyMode = False
End Sub
 
Upvote 0
Cảm ơn bạn nhiều lắm , mình mới dùng vb nên gà lắm. Bạn giải thích cho mình 2 lệnh này đươc được không
Set Rng = Range(Cls, Cells(Cls.Row, "iU").End(xlToLeft))
Rng.Copy
Range
("A65500").End(xlUp).Offset(1).Select

Cảm ơn bạn rất nhiều
 
Upvote 0
Mình có rất nhiều hàng ví dụ từ ô b4:Y100 bây giờ mình muốn chuyển tất cả các hàng thành 1 cột dữ liệu thì làm như thế nào, rất mong được các bạn giúp đỡ
Trong Paste Special có chức năng Transpose với tác dụng xoay hàng thành cột và ngược lại
Vậy bạn chỉ việc record macro quá trình bạn thao tác bằng tay là có ngay code thôi
 
Upvote 0
cái code này là lấy giá trị hết hàng thứ nhất rồi mới lấy các giá trị của hàng thứ 2, giờ e muốn lấy hết giá trị của cột thứ nhất rồi lấy tiếp tất cả giá trị của cột thứ 2, thứ n được k ạ
 
Upvote 0
Cái code này là lấy giá trị hết hàng thứ nhất rồi mới lấy các giá trị của hàng thứ 2, giờ e muốn lấy hết giá trị của cột thứ nhất rồi lấy tiếp tất cả giá trị của cột thứ 2, thứ n được k ạ

Em giờ có 1 file excel có nhiều cột, e muốn chuyển các cột đó theo về 1 cột mà cứ hết cột này thì nối tiếp cột kia luôn, giúp em với ạ
Chạy macro này với dữ liệu theo hình
PHP:
Option Explicit
Sub ChépVo1Cot()
 Dim Rws As Long
 Dim Rng As Range, Cls As Range
 
 For Each Cls In Range([c2], [c2].End(xlToRight))
    Set Rng = Range(Cls, Cells(65500, Cls.Column).End(xlUp))
    Rng.Copy Destination:=[A65500].End(xlUp).Offset(1)
 Next Cls
End Sub
Có gì nữa ta bàn tiếp!
 

File đính kèm

  • Chép Cột.JPG
    Chép Cột.JPG
    33.3 KB · Đọc: 31
Upvote 0
em chạy đoạn code
Option Explicit
Sub ChépVo1Cot
()
Dim Rws As Long
Dim Rng
As Range, Cls As Range

For Each Cls In Range([c2], [c2].End(xlToRight))
Set Rng = Range(Cls, Cells(65500, Cls.Column).End(xlUp))
Rng.Copy Destination:=[A65500].End(xlUp).Offset(1)
Next Cls
End Sub


nhưng mà kêt quả lại ra có khi lại không chạy hết tất cả các cột, xem lại giúp e với ạ
e chạy từ C2:V32 mà nó chỉ chạy từ cột C2 đến cột F32 thôi ạ
 

File đính kèm

  • 1.jpg
    1.jpg
    26.1 KB · Đọc: 8
  • 2.jpg
    2.jpg
    25.2 KB · Đọc: 7
Upvote 0
Web KT

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

Back
Top Bottom