lọc số liệu sang cột bên cạnh (2 người xem)

Liên hệ QC

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

phongduy

Thành viên mới
Tham gia
14/7/09
Bài viết
5
Được thích
0
Xin chào các bạn ! Tôi có 1 cột số liệu và ô trống như file đính kèm. Tôi muốn lọc những ô có chứa số liệu sang cột bên cạnh theo thứ tự từ trên xuống thì nên dùng hàm và công thức nào ? Xin cảm ơn các bạn giúp đỡ.
 

File đính kèm

Lần chỉnh sửa cuối:
Xin chào các bạn ! Tôi có 1 cột số liệu và ô trống như file đính kèm. Tôi muốn lọc những ô có chứa số liệu sang cột bên cạnh theo thứ tự từ trên xuống thì nên dùng hàm và công thức nào ? Xin cảm ơn các bạn giúp đỡ.
- Gõ gì đó vào cell đâu tiên (để làm tiêu đề)
- Chọn toàn bộ dử liệu (cả tiêu để vừa gõ vào) rồi vào menu Data\Filter\AutoFilter
- Bấm mũi tên xổ xuống của AutoFilter, chọn NonBlanks
- Copy dử liệu đang nhìn thấy rồi paste sang nơi khác
 
Một cách khác, xài macro này:

:-=

PHP:
Option Explicit
Sub TongHop()
 Dim Clls As Range, eRw As Long
 
 eRw = [a65500].End(xlUp).Row:         [B1].Value = "Value"
 Range("B2:B" & eRw).ClearContents
 For Each Clls In Range("A1:A" & eRw)
   If Clls.Value <> "" Then _
      [B65500].End(xlUp).Offset(1).Value = Clls.Value
 Next Clls
End Sub
--=0
 
Xin cảm ơn các bạn đã nhiệt tình giúp đỡ. Tuy nhiên tôi chưa giải quyết được vấn đề là dùng hàm và công thức để lọc số liệu. Các bạn biết thì xin chỉ giáo nhé !
 
Thêm 1 cách nữa để bạn tham khảo
PHP:
Sub Macro1()
    [A:A].Select
    With Selection
        .AutoFilter
        .AutoFilter Field:=1, Criteria1:="="
        .ClearContents
        .SpecialCells(2).Copy
    End With
        [B5].PasteSpecial Paste:=xlPasteValues
        Application.CutCopyMode = False
End Sub
 
Xin cảm ơn các bạn đã nhiệt tình giúp đỡ. Tuy nhiên tôi chưa giải quyết được vấn đề là dùng hàm và công thức để lọc số liệu. Các bạn biết thì xin chỉ giáo nhé !
Cách đơn giản không chịu làm lại muốn công thức!
Hic...
Muốn cũng có cho bạn luôn! Bạn gõ vào cell B1 công thức này:
PHP:
=INDEX($A$1:$A$99,SMALL(IF($A$1:$A$99<>"",ROW($A$1:$A$99),""),ROW()),)
Gõ xong bấm tổ hợp phím Ctrl + Shift + Enter nhé
 

File đính kèm

Xin cảm ơn bạn đã cho công thức. Tuy nhiên khi dán công thức vào những ô bên dưới thì bị báo lỗi #NUM!. Bạn có thể sửa thay vì lỗi thì trả giá trị là ô trống "" hay không ? Cám ơn bạn rất nhiều !
 
Từ công thức của Ndu tôi thêm phần bẫy lỗi theo yêu cầu của bạn (công thức hơi dài ráng nghiên cứu nha).
PHP:
{=IF(TYPE(INDEX($A$1:$A$99,SMALL(IF($A$1:$A$99<>"",ROW($A$1:$A$99),""),ROW()),))-16,"",INDEX($A$1:$A$99,SMALL(IF($A$1:$A$99<>"",ROW($A$1:$A$99),""),ROW()),))}
 
Cảm ơn bạn đã cho công thức và bẫy lỗi. Tuy nhiên nếu số liệu là 10,000 dòng chứ không phải 99 dòng và liên tục được thêm vào thì công thức có bẫy được hết lỗi không ? Các bạn vận dụng hàm và công thức thật là sáng tạo mà tôi không thể nghĩ ra và thật khó hiểu được hết. Tôi muốn học cách vận dụng công thức và hàm như các bạn thì nên đọc tài liệu ở đâu ? Mong các bạn chỉ giáo ! Cám ơn các bạn rất nhiều !
 
Thì bạn sửa tất cả các số $99 trong công thức thành $10000 hoặc số nào đó bạn muốn.
 
Cám ơn bạn TrungChinh đã nhiệt tình giúp đỡ. Tôi dùng công thức của bạn cho không những không hết lỗi #NUM! mà những giá trị cần lọc đều trở thành ô trống. Bạn xem lại công thức xem sao nhé !
 
Tuy nhiên nếu số liệu là 10,000 dòng chứ không phải 99 dòng và liên tục được thêm vào thì công thức có . . . !

Nếu thật sự >vạn dòng, mình khuyên bạn nên xài macro :-= --=0 :-=

Đây là macro mình đề xuất với bạn:
PHP:
Option Explicit
Sub CopyToColumn()
 Dim Rng As Range, sRng As Range, cRng As Range
 Dim MyAdd As String
 
 Set Rng = Range([A1], [A65500].End(xlUp))
 Set sRng = Rng.Find("*")
 If Not sRng Is Nothing Then
       MyAdd = sRng.Address
       Do
             If cRng Is Nothing Then
                  Set cRng = sRng
             Else
                  Set cRng = Union(cRng, sRng)
             End If
             Set sRng = Rng.FindNext(sRng)
         Loop While Not sRng Is Nothing And sRng.Address <> MyAdd
 End If
 cRng.Copy Destination:=[B2]
End Sub
 
Lần chỉnh sửa cuối:
@ phongduy: Bạn xem file đính kèm và nhớ lời làm theo lời dặn của ndu: Gõ xong bấm tổ hợp phím Ctrl + Shift + Enter nhé
 

File đính kèm

Cách dùng Auto filter

Thêm 1 cách nữa để bạn tham khảo
PHP:
Sub Macro1()
    [A:A].Select
    With Selection
        .AutoFilter
        .AutoFilter Field:=1, Criteria1:="="
        .ClearContents
        .SpecialCells(2).Copy
    End With
        [B5].PasteSpecial Paste:=xlPasteValues
        Application.CutCopyMode = False
End Sub
Xin ai biết giúp với .Em dùng muốn auto filter để lọc dữ liệi nhưng không xài được ai biết vì sao chỉ em với (vào dât chọn auto fiter nhưng ô vuông không xuất hiện)
 
Web KT

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

Back
Top Bottom