Hỏi về code làm mới dữ liệu

Liên hệ QC

beetune1991

Thành viên hoạt động
Tham gia
28/3/19
Bài viết
170
Được thích
5
Chào các anh chị,

Em đang muốn hỏi về hàm vba làm mới dữ liệu.
các anh giúp em chỉ em làm sao để có thể làm mới được các dữ liệu có trong các ô màu vàng.

tiện thể mong muốn của em là có thể sửa được số sheet cần xoá và thay đổi được nhiều vùng cần xoá màu vàng (trong file là 2)
nhưng có thể là 3,4 vùng trong đó nữa.

các anh chị hỗ trợ em với ạ
em cảm ơn,
 

File đính kèm

  • xoá làm mới dữ liệu.xlsx
    12.8 KB · Đọc: 9
(1) Em đang muốn hỏi về hàm vba làm mới dữ liệu.
(1.1)các anh giúp em chỉ em làm sao để có thể làm mới được các dữ liệu có trong các ô màu vàng.

(2) tiện thể mong muốn của em là có thể sửa được số sheet cần xoá và thay đổi được nhiều vùng cần xoá màu vàng (trong file là 2)
nhưng có thể là 3,4 vùng trong đó nữa.

các anh chị hỗ trợ em với ạ
em cảm ơn,
(1) Thế nào là làm mới dữ liệu theo í bạn?
(1.1) Chắc nên dùng cách thức Randomize
Còn nữa: Đầu câu nên viết hoa;
(2) Đầu câu nên viết bông.

Chúc mọi người vui vẻ!
 
Upvote 0
(1) Thế nào là làm mới dữ liệu theo í bạn?
(1.1) Chắc nên dùng cách thức Randomize
Còn nữa: Đầu câu nên viết hoa;
(2) Đầu câu nên viết bông.

Chúc mọi người vui vẻ!
Trong file em có bôi vàng vùng cần xoá ạ, xoá theo ý em có nghĩa là, em có thể tự chỉnh sửa được vùng cần xoá ạ, có thể mở rộng phạm vi hoặc thu hẹp lại. và mở rộng thêm sheet 1, 2,3 hoặc thêm tới 10 tuỳ ý ạ, em muốn ấn nút làm mới dữ liệu để xoá ạ.
 
Upvote 0
Bạn giải thích khó hiểu quá, không hình dung được.
Anh xem trong file đính kèm ạ.
Anh bỏ qua chữ làm mới ạ, do em để chữ đó nghe cho hay thôi ạ. nó chỉ là một lênh xoá dữ liệu thôi ạ.
Mục đích là xoá dữ liệu bôi vàng thôi ạ.

và em muốn code có thể tự chỉnh xửa để thay vùng xoá và các sheet xoá vì có thể sheet của em nhiều hơn 3 sheet em làm ví dụ trong file gốc ạ.
 
Upvote 0
và em muốn code có thể tự chỉnh xửa để thay vùng xoá và các sheet xoá vì có thể sheet của em nhiều hơn 3 sheet em làm ví dụ trong file gốc ạ.
Bạn cho ví dụ "code có thể tự chỉnh sửa" nghĩa là thế nào. Là code đoán được ý bạn rồi tự chỉnh sửa hay sao, và sửa cái gì nhỉ.
 
Lần chỉnh sửa cuối:
Upvote 0
Bạn cho ví dụ "code có thể tự chỉnh sửa" nghĩa là thế nào. Là code đoán được ý bạn rồi tự chỉnh sửa hay sao, và sửa cái gì nhỉ.
nghĩa là em trình non, nên code dễ hiểu ạ. để sau này em chỉnh sửa code để có thể lựa chọn sheet cần xoá và nhiều vùng vần xoá ạ trong 1 sheet ạ (trong file ví dụ là 2 vùng sheet màu vàng tách biệt đó ạ)
 
Upvote 0
code dễ hiểu ạ. để sau này em chỉnh sửa code để có thể lựa chọn sheet cần xoá và nhiều vùng vần xoá ạ trong 1 sheet ạ (trong file ví dụ là 2 vùng sheet màu vàng tách biệt đó ạ)
Lẽ ra nói đoạn này ngay từ đầu, không cần thêm các câu để "cho hay" làm người khác không hiểu nổi, vậy xóa vùng màu vàng tại tất cả các sheet cùng một lúc hay cần xóa sheet nào mới xóa sheet đó thôi.
 
Upvote 0
Chào các anh chị,

Em đang muốn hỏi về hàm vba làm mới dữ liệu.
các anh giúp em chỉ em làm sao để có thể làm mới được các dữ liệu có trong các ô màu vàng.

tiện thể mong muốn của em là có thể sửa được số sheet cần xoá và thay đổi được nhiều vùng cần xoá màu vàng (trong file là 2)
nhưng có thể là 3,4 vùng trong đó nữa.

các anh chị hỗ trợ em với ạ
em cảm ơn,
Xóa tất cả các sheet trừ sheet "xoa", dữ liệu các sheet bắt đầu ô B6
Chưa bẩy lỗi không đúng dữ liệu
Mã:
Sub ABC()
  Dim Rng As Range, n&, j&, sR&, eCol&
  For n = 1 To Sheets.Count
    If Sheets(n).Name <> "xoa" Then
      Set Rng = Sheets(n).Range("B6").CurrentRegion
      sR = Rng.Rows.Count
      sC = Rng.Columns.Count
      For j = sC To 2 Step -1
        If eCol = 0 Then If Rng(1, j) <> "STT" Then eCol = j
        If Rng(1, j - 1) = "STT" Then
          Range(Rng(2, j), Rng(sR, eCol)).ClearContents
          eC = 0
        End If
      Next j
    End If
  Next n
End Sub
 
Upvote 0
Lẽ ra nói đoạn này ngay từ đầu, không cần thêm các câu để "cho hay" làm người khác không hiểu nổi, vậy xóa vùng màu vàng tại tất cả các sheet cùng một lúc hay cần xóa sheet nào mới xóa sheet đó thôi.
hiện tại em cần xoá hết anh ạ.
nếu chọn được sheet xoá thì anh dạy em thêm em với nhé.
Bài đã được tự động gộp:

Xóa tất cả các sheet trừ sheet "xoa", dữ liệu các sheet bắt đầu ô B6
Chưa bẩy lỗi không đúng dữ liệu
Mã:
Sub ABC()
  Dim Rng As Range, n&, j&, sR&, eCol&
  For n = 1 To Sheets.Count
    If Sheets(n).Name <> "xoa" Then
      Set Rng = Sheets(n).Range("B6").CurrentRegion
      sR = Rng.Rows.Count
      sC = Rng.Columns.Count
      For j = sC To 2 Step -1
        If eCol = 0 Then If Rng(1, j) <> "STT" Then eCol = j
        If Rng(1, j - 1) = "STT" Then
          Range(Rng(2, j), Rng(sR, eCol)).ClearContents
          eC = 0
        End If
      Next j
    End If
  Next n
End Sub

để em xem thử.
em sợ code này xoá sạch ấy ạ. em chưa rõ chỉnh theo vùng hay sheet như thế nào luôn ạ.
 
Upvote 0
hiện tại em cần xoá hết anh ạ.
nếu chọn được sheet xoá thì anh dạy em thêm em với nhé.
Bài đã được tự động gộp:



để em xem thử.
em sợ code này xoá sạch ấy ạ. em chưa rõ chỉnh theo vùng hay sheet như thế nào luôn ạ.
Tự chỉnh, nếu không được thì gởi file với các sheet và các cột thật, dữ liệu giả cũng dược
 
Upvote 0
anh ơi cho em hỏi, nếu mình muốn chỉnh từ sheet 1 tới sheet 30 hoặc các sheet chỉ định theo kiểu 1,3,5,7,9 chẳng hạn ấy thì sửa như thế nào ạ
Nếu sheet 1 tới 30 thì dùng code bài #13. Còn một vài sheet không cố định thì thử code dưới:
Mã:
Option Explicit

Sub Xoa_DL()
Dim sh As Worksheet, SheetArr()
SheetArr = Array("1", "2")
    For Each sh In Sheets(SheetArr)
        sh.Range("C7:E21,G7:I21").ClearContents
    Next
End Sub
 
Upvote 0
Nếu sheet 1 tới 30 thì dùng code bài #13. Còn một vài sheet không cố định thì thử code dưới:
Mã:
Option Explicit

Sub Xoa_DL()
Dim sh As Worksheet, SheetArr()
SheetArr = Array("1", "2")
    For Each sh In Sheets(SheetArr)
        sh.Range("C7:E21,G7:I21").ClearContents
    Next
End Sub
Em đổi cùng dòng này sang dòng khác thì bị debug anh ạ.
"sh.Range("C7:E21,G7:I21").ClearContents"
 
Upvote 0
Web KT

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

Back
Top Bottom