Hỏi về Input.Box

Liên hệ QC

anhtuan1066

Thành viên gạo cội
Tham gia
10/3/07
Bài viết
5,802
Được thích
6,912
Tôi có đoạn code sau:
Mã:
Sub Test()
   Dim VUNG As Range, Clls As Range
   [B][COLOR=red]Set VUNG = Application.InputBox(Prompt:="Chon vung", Type:=8)[/COLOR][/B]
   For Each Clls In VUNG
      If Clls.Value = "" Then Clls.Value = "X"
   Next
End Sub
Các cao thủ cho hỏi đoạn code trên có gì sai? Tại sao nó lại báo lổi tại dòng màu đỏ?
ANH TUẤN
 
Bác ơi em thử rồi nó chạy tốt chứ có sao đâu! (Em sử dụng Office 2003).
 
Lần chỉnh sửa cuối:
Upvote 0
Thì vậy! Tức ở chổ là trên file mới nó chạy bình thường, còn trong file cũa tôi thì nó.. tịt...
Thử xem file này nhé! Tại sao nó ko chạy?
ANH TUẤN
 

File đính kèm

Upvote 0
Thử câu lệnh sau, nữa đi; Xem lỗi còn không zậy(?)

Mã:
Set VUNG = Range(Application.InputBox(Prompt:="Chon vung"))
Nếu còn là do nhập địa chỉ đó nha!
Tulips.jpg
 
Upvote 0
anhtuan1066 đã viết:
Tôi có đoạn code sau:
Mã:
Sub Test()
   Dim VUNG As Range, Clls As Range
   [B][COLOR=red]Set VUNG = Application.InputBox(Prompt:="Chon vung", Type:=8)[/COLOR][/B]
   For Each Clls In VUNG
      If Clls.Value = "" Then Clls.Value = "X"
   Next
End Sub
Các cao thủ cho hỏi đoạn code trên có gì sai? Tại sao nó lại báo lổi tại dòng màu đỏ?
ANH TUẤN

Bác nên viết như thế này
Mã:
Sub Test()
   Dim VUNG As Range, Clls As Range

[COLOR="Red"]   On Error Resume Next
   Set VUNG = Application.InputBox(Prompt:="Chon vung", Type:=8)
   If Not VUNG Is Nothing Then Exit Sub
[/COLOR] 
   For Each Clls In VUNG
      If Clls.Value = "" Then Clls.Value = "X"
   Next
End Sub
 
Upvote 0
Sửa câu lệnh lại như anh Sa thì vẫn còn lỗi, còn làm giống như TuanVNUNI thì nó im re
Có điều nãy giờ tôi để ý với cách định nghĩa Input là String (Type =2 hoặc ko ghi gì) thì khi quét chọn vùng, thấy có xuất hiện dấu = phía trước địa chỉ... Và nếu xóa bỏ dấu = này thì code chạy ngay... Vậy là sao ta?
ANH TUẤN
 
Lần chỉnh sửa cuối:
Upvote 0
anhtuan1066 đã viết:
Thì vậy! Tức ở chổ là trên file mới nó chạy bình thường, còn trong file cũa tôi thì nó.. tịt... ANH TUẤN
Vậy là sao em ko hiểu gì hết! Nếu tạo một file mới mà nó chạy được thì bác copy toàn bộ dữ liệu lên file mới xem sao!
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Có phải Tuấn đang viết code trên form? Nếu vậy thì dùng cái control CellRef thử xem, đồ của Excel xài chắc không vấn đề.
Còn code trên sheet thì mình thua.
 
Upvote 0
Cãm ơn bạn! Bạn nhìn file tôi gữi chắc cũng hiểu mà.. Đây là 1 file dạng chấm công...
Ở tổ làm việc của tôi thường hay đi làm vào ngày CN (gần như ko có CN nào nghĩ), và mỗi người sẽ dc bố trí nghĩ bù vào 1 ngày khác trong tuần...
Vậy ngay cell nào có chử CH, nghỉa là người ấy đang dc nghĩ bù, cell nào có chử X là đang đi làm bình thường...
Vấn đề là nếu ta gõ cả chử CH lần X vào 1 tuần thì phí công quá, nên tôi mới nghĩ ra cách: chỉ cần gõ chử CH, chạy code, nó sẽ dò tìm, chổ nào ko có chử CH thì cứ điền vào chử X... chỉ đơn giãn vậy thôi!
Còn vấn đề vì sao code chạy trên file mới thì ko có vấn đề, chạy trên file tôi lại bị lỗi, điều nàytôi đã biết tại sao rồi...
Cãm ơn tất cã các cao thủ đã quan tâm giúp đở!
ANH TUẤN
 
Upvote 0
Web KT

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

Back
Top Bottom