Yêu cầu này không thể dùng Find and Replace để thực hiện rồi... Vậy cách củ chuối nhất là: For Each Clls in Range(....)Mình có 1 bảng tính, cần thay thế tất cả các số >0 , thay thế bằng 1.
Xin hỏi mình làm cách nào !
Thanks in advance.
Sub Find_n_Replace()
Dim Rng As Range
Set Rng = [A1].CurrentRegion
Application.ScreenUpdating = False
On Error Resume Next
For i = 1 To Rng.Columns.Count
ActiveSheet.ShowAllData
Rng.AutoFilter Field:=i, Criteria1:=">0"
Rng.Offset(1, i - 1).Resize(Rng.Rows.Count - 1, 1).SpecialCells(12).Value = 1
Next
ActiveSheet.ShowAllData
Application.ScreenUpdating = True
End Sub
Thì nhiều cách mà ---> Miển đạt được mục đíchTôi nghĩ không nên quá phức tạp vấn đề đến vậy, mình có thể thay thế sang 1 Sheet mới cũng được chứ đâu nhất thiết phải thay thế ngay trên Sheet đó. Mà như vậy thì chỉ cần gõ 1 cái hàm IF đơn giản bên Sheet mới rồi copy ra cả Sheet là OK. Tuy nhiên cũng chỉ nên copy đúng tới những ô có dữ liệu thôi, chứ copy cả Sheet thì cũng có vấn đề đấy .
Vậy, nếu bạn có khoảng 1000 con số lớn hơn 0, muốn thay thế thành 1, thì bạn phải làm 1000 lần ?Bạn bấm tổ hộp phím Ctrl F - trong ô Find what đánh số cần thay thế, trong replace with đánh số sẽ được thay thế
Mình có 1 bảng tính, cần thay thế tất cả các số >0 , thay thế bằng 1.
Xin hỏi mình làm cách nào !
Thanks in advance.
Thì bạn ấy đã nói rõ rồi còn gì:Xin hỏi rõ thêm :Không biết có đúng thế không ??
- Những số >0 ----> 0
- Những số = 0 ---->0
- Những số <0 ------> Giữ nguyên.
Phải phân chia ra hết các trường hợp thì mới làm đúng được bạn ạ.
Thân!
Ngầm hiểu rằng tất cả những cái khác sẽ được giữ nguyênMình có 1 bảng tính, cần thay thế tất cả các số >0 , thay thế bằng 1.
Xin hỏi mình làm cách nào !
Thanks in advance.