Dư ra 1 Sheets khi đếm bằng VBA

Liên hệ QC

SA_DQ

/(hông là gì!
Thành viên danh dự
Tham gia
8/6/06
Bài viết
14,326
Được thích
22,370
Nghề nghiệp
Nuôi ba ba & trùn quế
Sub GoHere()
Dim myShts As Integer: Dim myList As String

myShts = ActiveWorkbook.Sheets.Count
For iZ = 1 To myShts
myList = myList & iZ & " - " & ActiveWorkbook.Sheets(iZ).Name & " " & vbCr
Next iZ
Dim mySht As Byte
mySht = InputBox("Select sheet to go to." & vbCr & vbCr & myList)
Sheets(mySht).Select

End Sub

/(hi mình thử đoạn mã này, thì thay vì chỉ có 2 dòng ứng với 2 Sheets của mình thì có thêm sheets(3) với cái tên '00000000'
Nhưng khi chọn số 3 thì bị lỗi 1004: Select method of worksheet class failed
(ó bạn nào biết tại sao không à?!
 
Chỉnh sửa lần cuối bởi điều hành viên:
Dear HYen,
-----------
Đó vì vòng lặp FOR-NEXT của anh chạy hơi khoẻ đó ạ!
Trong mục Help về For...Next, Microsoft đã ghi chú thế này:
VBA Help đã viết:
Note If you omit counter in a Next statement, execution continues as if counter is included. If a Next statement is encountered before its corresponding For statement, an error occurs
Em thì em chả hiểu gì cả nhưng trong trường hợp em muốn đếm các phần tử trong một tập hợp xác định em khai báo một biến có kiểu là kiểu của tập hợp đó rồi dùng vòng lặp For Each ... Next:
Function Worksheet_Count() As Long
Dim sh As Worksheet
Dim wbMyWorkbook As Workbook
Set wbMyWorkbook = ActiveWorkbook
For Each sh In wbMyWorkbook.Worksheets
Debug.Print sh.Name & vbNewLine
Next
Worksheet_Count= wbMyWorkbook.Worksheets.Count
End Sub
 
Mình đã test thử của HYen nhưng thấy vẫn ổn, có gì đâu (Excel2003) ;;;;;;;;;;;
 
HYen đã viết:
Sub GoHere()/(hi mình thử đoạn mã này, thì thay vì chỉ có 2 dòng ứng với 2 Sheets của mình thì có thêm sheets(3) với cái tên '00000000'
Nhưng khi chọn số 3 thì bị lỗi 1004: Select method of worksheet class failed
(ó bạn nào biết tại sao không à?!
Theo em đây là virus. Mỗi lần thấy sheet này xuất hiện là em xóa ngay lập tức.
Cách xóa:
- Chuyển nó về chế độ visible sheets này thương ở chế độ veryhidden
- Ra Excel xóa.
 
Web KT
Back
Top Bottom