hoangminhtien
Thành viên gắn bó
![](/diendan/data/PhoToDanhHieu/pip.gif)
![](/diendan/data/PhoToDanhHieu/pip.gif)
![](/diendan/data/PhoToDanhHieu/pip.gif)
- Tham gia
- 29/2/08
- Bài viết
- 1,685
- Được thích
- 2,226
- Nghề nghiệp
- Mechanical Engineering
Sub chay() k = 1 For i = 1 To Worksheets.Count If Sheets(i).Name "tong hop" Then Range("K" & k).Value = Sheets(i).Range("A1").Value k = k + 1 End If Next End Sub
em có bài toán nhờ mọi người giúp, em có file có rất nhiều sheet, có sheet tổng hợp sẽ lấy dữ liệu từ các sheet còn lại. yêu cầu ghi trong file, mọi người giúp em với nhé!
Sub GetData()
Dim i, Sh As Long
[A:B].Clear
r = 1
For Sh = 1 To Worksheets.Count
If Sheets(Sh).Name <> "TH" Then
Cells(r, 1) = "Sheet " & Sheets(Sh).Name
Cells(r, 2) = Sheets(Sh).[A1]
r = r + 1
End If
Next
End Sub
Đặt code trên vào sự kiện Worksheet_Activate là xong ---> Sau khi bạn thêm, bớt sheet, chỉ cần chọn vào sheet TH là code chạyrất cám ơn Po_Pikachu và hoangdanh282vn.code của các bạn rất đúng với ý của mình. bây giờ mình muốn nó thực hiện 1 cách tự động hơn, tức là giả sử mình sẽ thêm 1 sheet f, thì giá trị A1 của sheet f sẽ tự động cập nhật vào sheet TH mà không cần phải bấm thêm bất kỳ 1 nốt gì nữa. các bạn xem có được không giúp mình với nhé!
Private Sub Worksheet_Activate()
.....................
.......Code here.........
.....................
End Sub
rất cám ơn bác ndu96081631, em đã làm được rồi. bác có thể giúp em làm bài này bằng công thức được không ạ!Đặt code trên vào sự kiện Worksheet_Activate là xong ---> Sau khi bạn thêm, bớt sheet, chỉ cần chọn vào sheet TH là code chạy
Cách làm:
- Click phải chuột vào sheet TH, chọn View code
- Copy đoạn code ở bài trên, paste vào và sửa lại chút ít:
Thật ra bài này cũng có thể làm bằng công thức, và cũng có khả năng cập nhật khi thêm hoặc xóa bớt sheetPHP:Private Sub Worksheet_Activate() ..................... .......Code here......... ..................... End Sub
Ex2003 có 256 Sh lấy đâu ra 1000 sh.giả sử em có 1000 sheet (1,2,3....,1000) mà em chỉ muốn lấy dữ liệu từ sheet 20 đến sheet 1000, còn 10 sheet đầu không lấy thì làm sao (tên sheet là 1,2,3...,10).lấy từ ô A1 đến I20
Tôi tạo thử 1000 Sh trong Ex 2003 mà vô tư. Giờ mới biết. Cám ơn ThuyYeu99 nhiều.
PHP:Sub taoSh() For i = 1 To 1000 Sheets.Add Next msgbox sheets.count end usb
Vậy Danh test thêm 1 cái nữa nhé. i=1000 thôi.Mình đã test thử, > 11,000 sheet. treo máy luôn.
Không biết là exel có nhiều sheet thề để làm gì nhỉ
Thầy Salam ơi, em chưa hiểu mấy cái Name của Thầy ạ, nhất là mấy cái Name GET.WORKBOOK(ROW(INDIRECT("A1"))) ạ.Bạn xem trong file kèm nhé.