Cho em xin cách chuyển dữ liệu dạng cột sang hàng ngang !!!

Liên hệ QC

hayvoc

Thành viên mới
Tham gia
30/11/08
Bài viết
38
Được thích
3
Em có 1 bảng dữ liệu dạng cột rất dài, giờ em muốn chuyển no thành dạng hàng ngang để sử dụng bộ lọc, nhưng lay hoay mãi vẫn không được, xin các anh chỉ giúp, chân thành cám ơn...
 

File đính kèm

  • Book1.xlsx
    12.9 KB · Đọc: 22
Em có 1 bảng dữ liệu dạng cột rất dài, giờ em muốn chuyển no thành dạng hàng ngang để sử dụng bộ lọc, nhưng lay hoay mãi vẫn không được, xin các anh chỉ giúp, chân thành cám ơn...
Bạn sử dụng chức năng Transpose trong Paste Special chưa?
 
Em có 1 bảng dữ liệu dạng cột rất dài, giờ em muốn chuyển no thành dạng hàng ngang để sử dụng bộ lọc, nhưng lay hoay mãi vẫn không được, xin các anh chỉ giúp, chân thành cám ơn...
Tách ra thì được nhưng mình cảm giác dữ liệu không thật, viết code rồi cũng không xài được. Bạn cho dữ liệu thật tí nữa đi. Không lẽ dữ liệu của hàng đầu đúng là A, B,C.... Nếu tách ra lấy 1 ký tự có ổn không???
Tạm làm thế này cho bạn tại vì... nghiện GPE quá
PHP:
Private Sub CommandButton1_Click()
Dim a, b, i, j, k, arr(), dl
a = 3: b = a + 4
Do Until a > Sheet1.[b65536].End(3).Row
   dl = Sheet1.Range(Sheet1.Cells(a, 2), Sheet1.Cells(b, 2)).Resize(, 11)
   ReDim arr(1 To 1, 1 To 200)
   For i = 1 To 11
      For j = 1 To 5
         If dl(j, i) <> "" Then
            k = k + 1
            arr(1, k) = dl(j, i)
         End If
      Next
   Next
   Sheet2.[b65536].End(3).Offset(1).Resize(, k) = arr
   k = 0: a = a + 5: b = b + 5
Loop
Range([b3], [b65536].End(3)).Offset(, -1) = [row(a:a)]
End Sub
 

File đính kèm

  • test.rar
    15 KB · Đọc: 28
Lần chỉnh sửa cuối:
Tách ra thì được nhưng mình cảm giác dữ liệu không thật, viết code rồi cũng không xài được. Bạn cho dữ liệu thật tí nữa đi. Không lẽ dữ liệu của hàng đầu đúng là A, B,C.... Nếu tách ra lấy 1 ký tự có ổn không???
Tạm làm thế này cho bạn tại vì... nghiện GPE quá
PHP:
Private Sub CommandButton1_Click()
Dim a, b, i, j, k, arr(), dl
a = 3: b = a + 4
Do Until a > Sheet1.[b65536].End(3).Row
   dl = Sheet1.Range(Sheet1.Cells(a, 2), Sheet1.Cells(b, 2)).Resize(, 11)
   ReDim arr(1 To 1, 1 To 200)
   For i = 1 To 11
      For j = 1 To 5
         If dl(j, i) <> "" Then
            k = k + 1
            arr(1, k) = dl(j, i)
         End If
      Next
   Next
   Sheet2.[b65536].End(3).Offset(1).Resize(, k) = arr
   k = 0: a = a + 5: b = b + 5
Loop
Range([b3], [b65536].End(3)).Offset(, -1) = [row(a:a)]
End Sub

Bài toán khó cũng cố gắng suy nghĩ để làm, nhưng tác giả vào xem, tải file xong thản nhiên ra đi không 1 lời để lại >>> bầu nhiệt huyết bị vơi đi
 
Bài toán khó cũng cố gắng suy nghĩ để làm, nhưng tác giả vào xem, tải file xong thản nhiên ra đi không 1 lời để lại >>> bầu nhiệt huyết bị vơi đi
em tải về và đang test thử, nhờ anh chỉnh sửa giúp, chứ ko cố ý như vậy đâu, sr anh. cám ơn anh nhìu lắm
 
em sửa lại 1 số thay đổi anh có thể viết lại dùm em được ko anh? cám ơn anh.
 

File đính kèm

  • Book1.xlsx
    12.2 KB · Đọc: 15
Bạn có thể giải thích tại sao cột B của bảng trên có 5 phần tử mà trích ra bảng dưới chỉ còn có 3 phần tử không?
Em cũng nhìn thấy dữ liệu kỳ như thế mà tác giả không kèm theo lời giải thích nào nên em mới bỏ của chạy đó.
 
Bạn có thể giải thích tại sao cột B của bảng trên có 5 phần tử mà trích ra bảng dưới chỉ còn có 3 phần tử không?
bảng dưới là phần dữ liệu cần thiết để em sử dụng bộ lọc, nên có lược bớt 1 số phần tử mà bảng trên có, cột B có 5 phần tử nhưng 1 trong số đó ko cần thiết nên em ko sử dụng chúng ạ!!! mong các anh chị nào bít có thể giúp dùm em.
 
bảng dưới là phần dữ liệu cần thiết để em sử dụng bộ lọc, nên có lược bớt 1 số phần tử mà bảng trên có, cột B có 5 phần tử nhưng 1 trong số đó ko cần thiết nên em ko sử dụng chúng ạ!!! mong các anh chị nào bít có thể giúp dùm em.
Vậy nếu viết code thì làm sao biết cái nào là CẦN THIẾT và cái nào là KHÔNG CẦN THIẾT đây?
Bạn nói rõ hơn được không?
 
Chắc tại anh ko hiểu cách hỏi trong file em gởi.
em thay đổi sang các ký tự A B C, A11 B11 C11 là để các anh dể hình dung,
1 - ở cột A1 bên dưới em muốn trình bày tất cả các số thứ tự mà cột A bên trên có.
2 - ở cột B1 bên dưới trình bày các ô tại B11, B21, B31... bên trên.
3 - cột B2 = B14, B24, B34 của cột B bên trên
lần lượt như vậy cho đến hết
( thật sự là do em không biết diễn đạt sao cho mấy anh dể hiểu nhất, mong sự thông cảm và giúp đỡ của mấy anh)

em đã chỉnh sửa file lại cho dễ nhìn hơn
 

File đính kèm

  • Book1.xlsx
    12.1 KB · Đọc: 11
Chắc tại anh ko hiểu cách hỏi trong file em gởi.
em thay đổi sang các ký tự A B C, A11 B11 C11 là để các anh dể hình dung,
1 - ở cột A1 bên dưới em muốn trình bày tất cả các số thứ tự mà cột A bên trên có.
2 - ở cột B1 bên dưới trình bày các ô tại B11, B21, B31... bên trên.
3 - cột B2 = B14, B24, B34 của cột B bên trên
lần lượt như vậy cho đến hết
( thật sự là do em không biết diễn đạt sao cho mấy anh dể hiểu nhất, mong sự thông cảm và giúp đỡ của mấy anh)

em đã chỉnh sửa file lại cho dễ nhìn hơn

Mình không biết làm VBA. Bạn thử dùng file công thức này nhé.
 

File đính kèm

  • Copy of Book1-2.xlsx
    14.6 KB · Đọc: 17
Mình không biết làm VBA. Bạn thử dùng file công thức này nhé.

mhung12005 công thức mảng của bạn chính xác và mình cũng rất thích sử dụng nó, vì tính đơn giản và dể chỉnh sửa chỉ cần copy và dán hợp với những người ko rành như mình. nhưng hình như nó dựa vào nội dung ở bảng bên dưới, nếu bảng bên dưới ko có hoặc có cách nào bạn hướng dẫn mình để mình hiểu nó hoạt động ra sao thì cám ơn bạn nhìu lắm. chứ giờ thực sự mình ko bít áp dụng vào dữ liệu của mình như thế nào nữa, hichic
 
mhung12005 công thức mảng của bạn chính xác và mình cũng rất thích sử dụng nó, vì tính đơn giản và dể chỉnh sửa chỉ cần copy và dán hợp với những người ko rành như mình. nhưng hình như nó dựa vào nội dung ở bảng bên dưới, nếu bảng bên dưới ko có hoặc có cách nào bạn hướng dẫn mình để mình hiểu nó hoạt động ra sao thì cám ơn bạn nhìu lắm. chứ giờ thực sự mình ko bít áp dụng vào dữ liệu của mình như thế nào nữa, hichic
Nếu đã có công thức mà không biết áp dụng thì chỉ có cách đưa dữ liệu thật lên để mọi người giúp 1 lần, không phải chỉnh sửa.
Thêm một cách làm trên Excel 2003:
 

File đính kèm

  • HongHieu.rar
    5.5 KB · Đọc: 13
mhung12005 công thức mảng của bạn chính xác và mình cũng rất thích sử dụng nó, vì tính đơn giản và dể chỉnh sửa chỉ cần copy và dán hợp với những người ko rành như mình. nhưng hình như nó dựa vào nội dung ở bảng bên dưới, nếu bảng bên dưới ko có hoặc có cách nào bạn hướng dẫn mình để mình hiểu nó hoạt động ra sao thì cám ơn bạn nhìu lắm. chứ giờ thực sự mình ko bít áp dụng vào dữ liệu của mình như thế nào nữa, hichic

Vậy thì bạn đưa cái file thật của bạn lên đây xem thế nào rồi tính tiếp nhé.
 
Tách ra thì được nhưng mình cảm giác dữ liệu không thật, viết code rồi cũng không xài được. Bạn cho dữ liệu thật tí nữa đi. Không lẽ dữ liệu của hàng đầu đúng là A, B,C.... Nếu tách ra lấy 1 ký tự có ổn không???
Tạm làm thế này cho bạn tại vì... nghiện GPE quá
PHP:
Private Sub CommandButton1_Click()
Dim a, b, i, j, k, arr(), dl
a = 3: b = a + 4
Do Until a > Sheet1.[b65536].End(3).Row
   dl = Sheet1.Range(Sheet1.Cells(a, 2), Sheet1.Cells(b, 2)).Resize(, 11)
   ReDim arr(1 To 1, 1 To 200)
   For i = 1 To 11
      For j = 1 To 5
         If dl(j, i) <> "" Then
            k = k + 1
            arr(1, k) = dl(j, i)
         End If
      Next
   Next
   Sheet2.[b65536].End(3).Offset(1).Resize(, k) = arr
   k = 0: a = a + 5: b = b + 5
Loop
Range([b3], [b65536].End(3)).Offset(, -1) = [row(a:a)]
End Sub

hihi em đã làm được rồi, những cột nào ko cần hiển thị em hide nó, như vậy thì chỉ hiển thị những phần cần thiết thôi anh à. Vậy mà ko hiểu cứ hỏi lung tung. Cám ơn anh, và tất cả mọi người.
 
Các bác giúp em cách copy dữ liệu mảng thành cột hoặc hàng

Em loay hoay mãi mà không tìm ra, mong các bác chỉ giúp em. Chứ em mà phải làm thủ công thì chết mất, vì mảng rất lớn, em có file đính kèm.
Xin cảm ơn các bác!./.
 

File đính kèm

  • Cách copy dữ liệu mảng thành cột hoặc hàng.xls
    21 KB · Đọc: 14
Em loay hoay mãi mà không tìm ra, mong các bác chỉ giúp em. Chứ em mà phải làm thủ công thì chết mất, vì mảng rất lớn, em có file đính kèm.
Xin cảm ơn các bác!./.

Dữ liệu của bạn chỉ có thể copy thủ công hoặc dùng VBA

Dữ liệu trong file là dữ liệu tạm nên cũng viết code tạm thế này

PHP:
Sub doc_ngang()
Dim dl, kq1, i, j, k, kq2
dl = [a1:d5].Value
ReDim kq1(1 To UBound(dl) * UBound(dl, 2), 1 To 1)
ReDim kq2(1 To 1, 1 To UBound(dl) * UBound(dl, 2))
For i = 1 To UBound(dl)
  For j = 1 To 4
    k = k + 1
    kq1(k, 1) = dl(i, j)
    kq2(1, k) = dl(i, j)
  Next
Next
[a10].Resize(k) = kq1
[F1].Resize(1, k) = kq2
End Sub
 
Web KT

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

Back
Top Bottom