Vòng lập for làm việc chậm

Liên hệ QC

lehoangcd09a

Thành viên mới
Tham gia
13/9/12
Bài viết
4
Được thích
0
Sub an_dong()
Dim i As Integer
For i = 77 To 33 Step -1
If Cells(i, 7) = 0 And Cells(i, 10) = 0 And Cells(i, 14) = 0 Then
Rows(i).Hidden = True
Else
Rows(i).Hidden = False
End If
Next
End Sub

Mình có viết một đoạn code như trên nhưng khi chạy thi đoạn code hoạt động khá lâu mới ẩn được các dòng có giá trị 0 nhờ các chuyên gia chỉnh sửa giúp em. Thanks mọi người
 
Hôm nay Giê Pê E có dịp chứng kiến màn đấu giữa dân lập trình căn bản và dân lập trình gú gồ. Ta la! :horse::horse::horse::horse::horse:

Chú: nếu tôi nhớ không lầm thì Tờ Quờ Nờ nổi danh ở các diễn đàn Ai Ti đã quá cái tuổi hạn "tứ thập tam" điều kiện để học VBA "bất chấp" rồi.
 
Upvote 0
Giải thích dài dòng lắm em, đang dùng đt nên lười gõ nữa
 
Lần chỉnh sửa cuối:
Upvote 0
... chỗ màu đỏ là rất rất bảo mật. :( :(
Hình như cũng không khó lắm. Hồi xưa tôi có thằng LTV làm việc với tôi, nó khoe là dân hacker, và mấy cái này nó hack cái một. Tôi không có hứng về cái này nên không hỏi tới.

Chú: có ai hiểu cái chỗ tôi hỏi trong bài #17 "thực thi đồng bộ trong VBA" thì giải thích giùm. Cái này thực sự tôi không hiểu và rất muốn hiểu.
Ai có thể cho link của Microsoft chuẩn định chỗ "đồng bộ" này. Chứ bản thân tôi quá 43 lâu rồi nên nghề gú gồ có hơi kém.
Chú 2:
chuẩn BASIC và VBA có nói rõ về việc "các biểu thức trong mệnh đề IF đều được thực hiện"
chuẩn C/C++, Java, JavaScript cũng có nói rõ về việc "short-circuit"
"chuẩn" là cái mà trình dịch phải tuân theo. Và người lập trình có thể dựa vào đó mà suy ra cách làm việc của code.
 
Upvote 0
Hì hì, người ta đã edit bài thành ... hết rồi mà bạn VetMini còn hỏi dồn, truy ép vậy ta ;)
 
Upvote 0
Hôm nay Giê Pê E có dịp chứng kiến màn đấu giữa dân lập trình căn bản và dân lập trình gú gồ. Ta la! :horse::horse::horse::horse::horse:

Chú: nếu tôi nhớ không lầm thì Tờ Quờ Nờ nổi danh ở các diễn đàn Ai Ti đã quá cái tuổi hạn "tứ thập tam" điều kiện để học VBA "bất chấp" rồi.

ai biểu không trích dẫn bài viết, giờ mình muốn xem lại cách python làm việc với IF ELSE thì xem ở đâu ? bắt đền bạn đó.
 
Upvote 0
ai biểu không trích dẫn bài viết, giờ mình muốn xem lại cách python làm việc với IF ELSE thì xem ở đâu ? bắt đền bạn đó.
Trẻ nít (dưới 13) hay nạ dòng (trên 43) mà nhỏng nhẻo vậy?
Íp eo xem lại làm chi, mấy cái linh ở "bài kia" nó chỉ hết rồi.
Có hỏi thì hỏi đương sự cách pí thòn làm việc với:
1. And và Or. Điển hình là VBA làm xử lý toán tử này khác với các ngôn ngữ khác. Và cách ép kiểu của các vế hai bên And/Or
2. Vòng lặp For. Điển hình là xác định biến, trị khởi đầu và kết. Có ngôn ngữ cho phép thay đổi trị biến vòng lặp, nhưng có ngôn ngữ thì không.

Cả 2 điều trên đều liên hệ đến bài chủ. Không phải là làm loãng tô bít nhé :{{:{{:{{
 
Upvote 0
Cứ luận bàn làm chi, chủ topic có khi chạy xong và vứt code đi rồi ... vì có thấy quay lại đâu (kiểu hỏi của GPE nó thế)
 
Upvote 0
Thực ra Delphi (ít ra chắc chắn trong Delphi 5 mà hồi xưa tôi "vọc") có 2 "cách tính". Để chuyển qua lại giữa 2 cách tính thì dùng compiler directive $B (B có lẽ là viết tắt của Boolean?):
- Mặc định thì có {$B–}, tức tính biểu thức lôgíc cho tới khi biết kết quả thì dừng. Tức nếu có A and B and C and ... and Z mà tính được A = FALSE thì B, C, ..., Z không được tính và kết quả là FALSE
- Nếu thêm directive {$B+} (cục bộ trong code) thì tất cả mọi biểu thức đều được tính cho dù ở bước nào đó kết quả đã được biết. Tức với vd. ở trên thì A, B, ..., Z đều được tính. Nếu muốn thiết lập toàn cục thì thay cho {$B+} ta đánh dấu chọn "Complete boolean eval" trong thẻ Compiler trong cửa sổ "Project Options"
 
Upvote 0
Thực ra Delphi (ít ra chắc chắn trong Delphi 5 mà hồi xưa tôi "vọc") có 2 "cách tính". Để chuyển qua lại giữa 2 cách tính thì dùng compiler directive $B (B có lẽ là viết tắt của Boolean?):
- Mặc định thì có {$B–}, tức tính biểu thức lôgíc cho tới khi biết kết quả thì dừng. Tức nếu có A and B and C and ... and Z mà tính được A = FALSE thì B, C, ..., Z không được tính và kết quả là FALSE
- Nếu thêm directive {$B+} (cục bộ trong code) thì tất cả mọi biểu thức đều được tính cho dù ở bước nào đó kết quả đã được biết. Tức với vd. ở trên thì A, B, ..., Z đều được tính. Nếu muốn thiết lập toàn cục thì thay cho {$B+} ta đánh dấu chọn "Complete boolean eval" trong thẻ Compiler trong cửa sổ "Project Options"
Hình như mấy cái $B+/$B- đó nó gọi là "cash functions" phải hôn bác? Tôi quá tuổi gú gồ rồi cho nên không rõ :(:confused::(.
 
Upvote 0
Tôi thấy có người gú gô # thành ra hash function cho nên bắt chước đoán thử chắc là $ gú gô sẽ ra cash function vậy mà :p:p:p
 
Upvote 0
Tôi thấy có người gú gô # thành ra hash function cho nên bắt chước đoán thử chắc là $ gú gô sẽ ra cash function vậy mà :p:p:p
Bác bắn một mũi tên mà chả cho "gợi ý" gì nên tôi có hiểu đâu. Đã là loại chậm hiểu mà, không được như con nhà người ta. :D
 
Upvote 0
Web KT

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

Back
Top Bottom