Phanhanhdai
Thành viên tiêu biểu

- Tham gia
- 16/3/08
- Bài viết
- 733
- Được thích
- 1,876
- Nghề nghiệp
- Thiết kế công trình
Hổng hiểu giữ được link là giữ cái gì?Làm thế nào mà Copy toàn bộ dữ liệu cột A này sang cột A của Sheet2 nhưng bỏ qua những dòng trống hoặc những ô có chứa số 0 mà vẫn giữ được Link (những ô cần Copy màu đỏ)
em ví dụ ô A1 của Sheet1 được Copy sang ô A2 của Sheet2 thì kết quả khi mở ô A2 (của Sheet2) vẫn có công thức là =Sheet1!A1Bạn hỏi
Hổng hiểu giữ được link là giữ cái gì?
Nếu copy như bạn nói, tức bỏ giá trị 0 và rổng thì chỉ việc AutoFilter, bỏ check 0 và rổng rồi cứ copy paste bình thường thôi
Lọc bằng AutoFilter như tôi nói ở trên, copy những cell đang hiện, qua sheet 2, Paste Special và bấm nút Paste Linkem ví dụ ô A1 của Sheet1 được Copy sang ô A2 của Sheet2 thì kết quả khi mở ô A2 (của Sheet2) vẫn có công thức là =Sheet1!A1
Mục đích của em là đầu vào thay đổi thì đầu ra cũng thay đổi (không phải Lọc xong rồi Copy dưới dạng Value ah).
Thì cũng vậy thôiNếu bài này Copy từ cột A của Sheet1 sang cột A của Sheet2 thì làm như sư phụ ndu rất OK, nếu giả sử đích copy của em dán ngay vào cột B của Sheet1 (đầu vào và đầu ra cùng Sheet) thì phải làm thế nào? Tức đầu vào rời rạc có ô rống, ô số 0 nhưng cột đầu ra đảm bảo liên tục không có ô rỗng, ô số 0 thì làm sao sư phụ ơi?
Thế người ta yêu cầu bỏ luôn cell có giá trị = 0 thì bạn làm thế nào? Xem kỹ lại yêu cầu nhaView attachment 65579
Anh ndu bài này đâu cần Trích lọc làm gì, em làm bình thường nó vẫn ra mà, em có gởi kèm theo file anh xem nha
Thưa thày vấn đề dữ liệu đầu vào của em thay đổi luôn (vì bản chất nó là kết quả của Sheet khác), danh sách đầu vào có thể dài ra hoặc tình huốn ô A5 đang là 20/1/2011 có thể thay đổi thành rỗng hoặc 0. Vậy có cách nào đầu ra bám theo đầu bài "dai như đỉa" không, đầu vào dài ra thì đầu ra cũng dài ra...Lúc này mình sẽ viết Code như nào ah?
Thích code thì code thôi:Thưa thày vấn đề dữ liệu đầu vào của em thay đổi luôn (vì bản chất nó là kết quả của Sheet khác), danh sách đầu vào có thể dài ra hoặc tình huốn ô A5 đang là 20/1/2011 có thể thay đổi thành rỗng hoặc 0. Vậy có cách nào đầu ra bám theo đầu bài "dai như đỉa" không, đầu vào dài ra thì đầu ra cũng dài ra...Lúc này mình sẽ viết Code như nào ah?
Sub RemoveZeroValues(ByVal SrcRng As Range, Target As Range)
Dim sArray, i As Long, Item, Tmp, Arr()
On Error Resume Next
sArray = SrcRng.Value
ReDim Arr(1 To UBound(sArray), 1 To 1)
For Each Item In sArray
Tmp = Item
If Tmp <> 0 And Tmp <> "" Then
i = i + 1
Arr(i, 1) = Tmp
End If
Next
If i Then Target.Resize(i, 1).Value = Arr
End Sub
Private Sub Worksheet_Activate()
Dim SrcRng As Range, Target As Range
Set SrcRng = Sheet1.Range("A1:A10000")
Set Target = Sheet2.Range("A1")
Sheet2.Range("A:A").ClearContents
RemoveZeroValues SrcRng, Target
End Sub
Dùng hàm lọc danh sách đi, bạn biết dùng mà, xem file đính kèm.Thưa thày vấn đề dữ liệu đầu vào của em thay đổi luôn (vì bản chất nó là kết quả của Sheet khác), danh sách đầu vào có thể dài ra hoặc tình huốn ô A5 đang là 20/1/2011 có thể thay đổi thành rỗng hoặc 0. Vậy có cách nào đầu ra bám theo đầu bài "dai như đỉa" không, đầu vào dài ra thì đầu ra cũng dài ra...Lúc này mình sẽ viết Code như nào ah?
Ý của bạn là không coppy ô trống phải không?
Không biết bài mẫu này có đúng ý bạn không ?
View attachment 65574