maianhngoc1987

New Member
- Ý mình muốn lọc ra 1 cột gồm các số (là các dữ liệu số nằm trên cột D) nằm trên những dòng lẻ và 1 cột gồm các số nằm trên những dòng chẵn.

- Mình có thử làm trên macro như hướng dẫn, nhưng nó cứ báo lỗi ở dòng: "Range("A" & (i div 2) + 1).Select"
 

miumiususu1

New Member
Chết chửa! Xin lỗi nha, vừa học VB vừa học Pascal nên bị tẩu hoả nhập ma.
Lộn div bên pascal với \ bên vb. Sửa lại thế này:Range("A" & (i\2+1)) là ok.
Macro chứ còn sao nữa trời ơi.
Kiếm đỏ mắt có ra chức năng nào đâu. Dùng Visual Basic for Application đó (VBA). (Mình là dân VB xoàng chứ không xài API, càng không bjk xài VBA, tự rà không hà chứ không xài thường)
Ấn chuột phải vào thanh công cụ, chọn Visual Basic. Trong thanh công cụ mới xuất hiện, bấm vào Visual Basic Editor. Trong cây project ấn chuột phải làm ra (tạo) module. Trong module mới làm ra (tạo) copy nguyên cái mã này vô: (nhớ vứt mấy dấu chấm đầu dòng nha, tại forum không cho bỏ trống đầu hàng)
Code:
Sub LocKot()
for i=1 to 100
..range("D" & i).select
..m=activecell.formular1c1
..if i mod 2=1 then
....'Tách ra cột A
....Range("A" & (i\2+1)).select
....activecell.formular1c1=m
..else
....'Tách ra cột B
....range("B" & (i/2)).select
....activecell.formular1c1=m
..end if
next i
end sub

Bấm Alt+Q, ấn nút Macro trong thanh Visual Basic, chọn LocKot, bấm Run. Xong.
Nếu có thắc mắc gì về VBA thì post email lên.
Visual Basic cực mạnh vì nó hỗ trợ Microsoft Office mà. Có ai thử vọc PowerPoint = VBA không chỉ mình cách vọc.

P/s: Mới thấy mod trả lời xong. Lọc nghĩa là tách ra đó mod ơi. VBA vô đối!!!



P/s: Nếu cần mình sẽ chỉ cho cách xài vba cho, cho mình email đi mình sẽ cho tài liệu.
 

Filmer

New Member
Thanks nhiều. Mà cách này có vẻ hơi khó nhỉ, phải biết thêm lập trình VB, phải chi có cách thao tác bằng hàm của Excel. Nhưng dù sao cũng vừa giải quyết được vấn đề.
 

tamtinh20082003

New Member
"Lọc" có thể hiểu theo nhiều nghĩa, không rõ bạn tính lọc ra sao. Nhưng có gợi ý là bạn có thể dùng hàm ROW(D1) sẽ trả về số thứ tự hàng của ô D1, rồi bạn chia số đó cho 2 để xem số dư là 0 hay 1 thì sẽ biết được hàng đó là chẵn hay lẻ.
 
Macro chứ còn sao nữa trời ơi. Kiếm đỏ mắt có ra chức năng nào đâu. Dùng Visual Basic for Application đó (VBA). (Mình là dân VB xoàng chứ không xài API, càng không bjk xài VBA, tự rà không hà chứ không xài thường)
Ấn chuột phải vào thanh công cụ, chọn Visual Basic. Trong thanh công cụ mới xuất hiện, bấm vào Visual Basic Editor. Trong cây project ấn chuột phải làm ra (tạo) module. Trong module mới làm ra (tạo) copy nguyên cái mã này vô: (nhớ vứt mấy dấu chấm đầu dòng nha, tại forum không cho bỏ trống đầu hàng)

Sub LocKot()
for i=1 to 100
..range("D" & i).select
..m=activecell.formular1c1
..if i mod 2=1 then
....'Tách ra cột A
....range("A" & (i div 2+1)).select
....activecell.formular1c1=m
..else
....'Tách ra cột B
....range("B" & (i/2)).select
....activecell.formular1c1=m
..end if
next i
end sub

Bấm Alt+Q, ấn nút Macro trong thanh Visual Basic, chọn LocKot, bấm Run. Xong.
Nếu có thắc mắc gì về VBA thì post email lên.
Visual Basic cực mạnh vì nó hỗ trợ Microsoft Office mà. Có ai thử vọc PowerPoint = VBA không chỉ mình cách vọc.

P/s: Mới thấy mod trả lời xong. Lọc nghĩa là tách ra đó mod ơi. VBA vô đối!!!
 

Các chủ đề có liên quan khác

Top