Chuyên mục xử lý, gỡ rối code VBA (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

Status
Không mở trả lời sau này.

ndu96081631

Huyền thoại GPE
Thành viên BQT
Super Moderator
Tham gia
5/6/08
Bài viết
30,703
Được thích
53,957
Em cảm ơn thầy ndu rất nhiều ạ.
Em đã sử dụng được file của thầy rồi a.
(P/s: e không thấy nút thank để cảm ơn ạ)

Mã:
Public Const s3 = "00:00:15"
Đây là giá trị bắt đầu của đồng hồ đếm ngược. Ở đây tôi đặt nó = 15s, muốn khác hơn hãy sửa lại nhé[/QUOTE]
 
Upvote 0
Thử file này xem sao nhé
Lưu ý trong code có đoạn:
Mã:
Public Const s3 = "00:00:15"
Đây là giá trị bắt đầu của đồng hồ đếm ngược. Ở đây tôi đặt nó = 15s, muốn khác hơn hãy sửa lại nhé

Thưa thầy! Thầy giúp em một chút được không ạ?
1. Thầy sửa lại code cho em phần chạy thời gian trên Forum, hiện tại Enter là bắt đầu chạy, nhưng không có phần tạm dừng (như kiểu nút Pause). Em muốn chỉnh nút Enter vừa là nhấn để bắt đầu chạy thời gian và cũng nhấn để làm nút tạm dừng ạ.
2. Lỗi lúc thời gian nghỉ giữa hiệp đang chạy mà nhấn nút cách thì thời gian nghỉ lại chạy lại từ đầu, thầy chỉnh lại cho em là vô hiệu hóa các nút để không ảnh hưởng đến thời gian nghỉ.
3. Nếu số điểm chênh lệch giữa 2 vận động viên (Xanh và Đỏ) là 10 điểm thì vận động viên có số điểm cao hơn sẽ thắng (VD: Xanh 1 điểm - Đỏ 11 điểm, --> Đỏ thắng).
4. Khi vận động viên thắng thì điểm sẽ chuyển sang màu xanh như lúc nhảy điểm ạ.
Em cảm ơn thầy ạ.
---------------
File đính kèm em để phía dưới bài ạ.
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Chúc ae, các bác năm mới 2017 dồi dào sức khoẻ, vạn sự như ý.
 
Upvote 0
Thưa thầy! Thầy giúp em một chút được không ạ?
1. Thầy sửa lại code cho em phần chạy thời gian trên Forum, hiện tại Enter là bắt đầu chạy, nhưng không có phần tạm dừng (như kiểu nút Pause). Em muốn chỉnh nút Enter vừa là nhấn để bắt đầu chạy thời gian và cũng nhấn để làm nút tạm dừng ạ.
2. Lỗi lúc thời gian nghỉ giữa hiệp đang chạy mà nhấn nút cách thì thời gian nghỉ lại chạy lại từ đầu, thầy chỉnh lại cho em là vô hiệu hóa các nút để không ảnh hưởng đến thời gian nghỉ.
Em cảm ơn thầy ạ.
---------------
File đính kèm em để phía dưới bài ạ.
Ủa? File này chạy sao vậy bạn? Tôi mở lên chẳng chạy được gì cả
 
Upvote 0
Xin lỗi thầy, em gửi lại file bên dưới ạ. Mong thầy chỉnh sửa giúp em ạ.
bạn thử thêm khai báo biến này vào đầu module nhe
Mã:
[COLOR=#ff0000]Public BD As Boolean[/COLOR]
thêm đoạn này vào Private Sub DisplayTimer()
Mã:
[COLOR=#ff0000]    Do
        DoEvents
    Loop Until BD = False[/COLOR]
'----------------------
thêm đoạn này vào usedform BangDiem
Mã:
    Case NhacNhoX
        Tinhnhacnho 2
[COLOR=#ff0000]    Case 13[/COLOR]
[COLOR=#ff0000]        BD = Not (BD)[/COLOR]
    End Select
còn cách tính thời gian bạn xem lại he. vì khi ẻnter lại thì nó trừ đi mất mấy giây lúc dừng lại luôn (ví dụ dừng 10s) kh enter chạy lại thì nó trừ mất 10s chứ ko phải trừ 1 giây
có thể chỉnh lại cho nó lấy giá trị của .caption trừ đi được không.
ps: mình còn gà nên không giúp được nhiều. mong code trên giúp được chút gì đó
 
Upvote 0
[Sửa lỗi code chạy 2 lần]

mọi người giúp mình vấn đề này với
cài Addins này vào và thao tác như hình
mục 1 - 2 -3 có thể chọn tùm lum gì cũng được.
nhưng thường hay bị lỗi ở mục như hình
mình có chỉnh khi nhấn vào nút lệnh thì sẽ hiện msgbox lên thông báo
vấn đề thế này
thời gian đầu nhấn thì code chạy và msgbox hiện lên chỉ một lần
nội dung code khi nhấn vào nút lệnh sẽ chạy tại ClassModule
nếu chèn module thì khi chọn 1 lệnh 2 lần sẽ hỏi lại có thay thế không
sau một hồi chèn module xong rồi xóa hết module vừa chèn đi (tức là không còn module nào nữa)

rồi lại thao tác lại thì lúc đó chỉ với một lần nhấn thì code chạy 2 lần (msgbox hiện 2 lần trong 1 lần nhấn) tức là chèn xong, lại chạy 1 lần nữa nên code hỏi có thay thế không? (trong khi trước đó đã xóa module đó đi rồi)
cho mình hỏi lý do vì sao lại bị chạy 2 -3 lần như thế
pass mở file: không có pass (bỏ trống rồi enter)
http://www.mediafire.com/file/n8g9rp9ia65f17m/aaaaaaaaaaaaaaaaaaaaa.xlam
 

File đính kèm

  • Untitled.jpg
    Untitled.jpg
    28.8 KB · Đọc: 30
Upvote 0
bạn thử thêm khai báo biến này vào đầu module nhe
Mã:
[COLOR=#ff0000]Public BD As Boolean[/COLOR]
thêm đoạn này vào Private Sub DisplayTimer()
Mã:
[COLOR=#ff0000]    Do
        DoEvents
    Loop Until BD = False[/COLOR]
'----------------------
thêm đoạn này vào usedform BangDiem
Mã:
    Case NhacNhoX
        Tinhnhacnho 2
[COLOR=#ff0000]    Case 13[/COLOR]
[COLOR=#ff0000]        BD = Not (BD)[/COLOR]
    End Select
còn cách tính thời gian bạn xem lại he. vì khi ẻnter lại thì nó trừ đi mất mấy giây lúc dừng lại luôn (ví dụ dừng 10s) kh enter chạy lại thì nó trừ mất 10s chứ ko phải trừ 1 giây
có thể chỉnh lại cho nó lấy giá trị của .caption trừ đi được không.
ps: mình còn gà nên không giúp được nhiều. mong code trên giúp được chút gì đó
Em cảm ơn anh!
Có lẽ không ổn anh ạ, em làm như anh hướng dẫn nhưng code chạy vẫn thế không có gì thay đổi cả.
Vấn đề nút Enter ở đây không khác gì nút play khi nhấn vào nó sẽ chuyển sang nút stop ý ạ. Còn để dừng thời gian chạy mà đến lúc chạy lại mà bị trừ đi số thời gian tương ứng khi dừng thì không đúng rồi ạ.
 
Upvote 0
Em cảm ơn anh!
Có lẽ không ổn anh ạ, em làm như anh hướng dẫn nhưng code chạy vẫn thế không có gì thay đổi cả.
Vấn đề nút Enter ở đây không khác gì nút play khi nhấn vào nó sẽ chuyển sang nút stop ý ạ. Còn để dừng thời gian chạy mà đến lúc chạy lại mà bị trừ đi số thời gian tương ứng khi dừng thì không đúng rồi ạ.
vậy bạn xem file nhé
file cao siêu quá nên tui chịu thua, chỉ làm được vậy, còn nút đang thi đấu gì đấy bạn biết sửa ở đâu thì sửa, tui coi mà mù tịt.
 
Upvote 0
vậy bạn xem file nhé
file cao siêu quá nên tui chịu thua, chỉ làm được vậy, còn nút đang thi đấu gì đấy bạn biết sửa ở đâu thì sửa, tui coi mà mù tịt.
Hihi, em còn đuối hơn anh. File này em nhờ bác huuthang_bd làm mà. Em chịu hẳn rồi, nên nhờ cac bác giúp thôi. Anh huuthang_bd không có thời gian nên chưa kịp hoàn chỉnh file. Nhưng thực sự là cảm ơn các anh rất nhiều.
P/s: file a chỉnh thời gian chạy và dừng khi nhấn Enter cũng được đấy chứ ạ. Em thử test có vấn đề gì đâu ạ.??.
 
Lần chỉnh sửa cuối:
Upvote 0
Hihi, em còn đuối hơn anh. File này em nhờ bác huuthang_bd làm mà. Em chịu hẳn rồi, nên nhờ cac bác giúp thôi. Anh huuthang_bd không có thời gian nên chưa kịp hoàn chỉnh file. Nhưng thực sự là cảm ơn các anh rất nhiều.
P/s: file a chỉnh thời gian chạy và dừng khi nhấn Enter cũng được đấy chứ ạ. Em thử test có vấn đề gì đâu ạ.??.
đã sửa lại nút "Stop"- "Đang thi đấu", tải file này nhé bạn
 
Upvote 0
Em có học 1 file combobox trên forum và tự làm theo nhu cầu của mình nhưng muốn thêm vào 1 số chức năng nữa là giới hạn vùng thực hiện combobox và khi click vào ô có combobox thì khoảng 0.5s sau nó mới hiện ra để có thể bôi đen và thực hiện 1 số lệnh khác.
Đây là file e làm, các bác giúp em với ạ
 

File đính kèm

Upvote 0
Cảm ơn anh ạ. Chạy có vẻ ổn rồi, nhưng vẫn lỗi phần nghỉ giữa hiệp khi nhấn Enter lại trở lại thời gian nghỉ ban đầu. Chỉnh thế nào đây ạ?
Tôi thêm cho bạn nút tạm dừng (Space) và sửa lỗi nhấn Enter khi đang nghỉ giữa hiệp.
 

File đính kèm

Upvote 0
Tôi thêm cho bạn nút tạm dừng (Space) và sửa lỗi nhấn Enter khi đang nghỉ giữa hiệp.
Dạ vâng, ok rồi anh ạ. Cảm ơn anh nhiều.
------------
1. Bổ xung code như thế nào để khi tạm dừng sẽ vô hiệu hóa các nút ạ (vì khi tạm dừng thì nhấn cho điểm vẫn nhận), giống như lúc nghỉ giữa hiệp ấy ạ.
2. Khi thoát Bảng chấm điểm thì nhấn nút Esc là ok rồi ạ, nhưng nhờ anh thêm bảng thông báo hiện lên hỏi là có thực sự muốn thoát không, vì nhỡ tay nhấn mà thoát luôn Bảng điểm thì nguy hiểm quá.
3. Phần tính điểm chênh lệch nhau 10 điểm là kết thúc trận đấu: VD khi VĐV đỏ được 10 điểm, VĐV xanh 0 điểm thì bảng hiện kết thúc trận đấu, thời gian dừng luôn tại thời điểm thắng đó. Điểm của VĐV hơn điểm hiện màu xanh như lúc nhảy điểm (nhưng ở đây hiện giữ nguyên màu xanh).
-------
Nhờ anh và mọi người ạ! Thank.
 
Upvote 0
Dạ vâng, ok rồi anh ạ. Cảm ơn anh nhiều.
------------
1. Bổ xung code như thế nào để khi tạm dừng sẽ vô hiệu hóa các nút ạ (vì khi tạm dừng thì nhấn cho điểm vẫn nhận), giống như lúc nghỉ giữa hiệp ấy ạ.
2. Khi thoát Bảng chấm điểm thì nhấn nút Esc là ok rồi ạ, nhưng nhờ anh thêm bảng thông báo hiện lên hỏi là có thực sự muốn thoát không, vì nhỡ tay nhấn mà thoát luôn Bảng điểm thì nguy hiểm quá.
3. Phần tính điểm chênh lệch nhau 10 điểm là kết thúc trận đấu: VD khi VĐV đỏ được 10 điểm, VĐV xanh 0 điểm thì bảng hiện kết thúc trận đấu, thời gian dừng luôn tại thời điểm thắng đó. Điểm của VĐV hơn điểm hiện màu xanh như lúc nhảy điểm (nhưng ở đây hiện giữ nguyên màu xanh).
-------
Nhờ anh và mọi người ạ! Thank.
Đã sửa y/c 1 và 2 theo ý bạn.
 

File đính kèm

Upvote 0
Em có trường hợp này cần mọi người trợ giúp.

1. Em có file data như bên dưới, em muốn dùng VBA để kết hợp data của 2 ô A2&B2 vào trong ô C2 với định dạng như bên dưới thì sẽ dùng công thức gì ?
DATE TIME.jpg
2. Sau khi chạy VBA, em muốn copy Sheet ( Pre Alert ) sang 1 worksheet mới và save Worksheet đó với 1 tên vd như : LCK Summary Pre-Alert.xlsx thì code sẽ như thế nào ?
sheet.jpg
Em xin cám ơn nhiều
 

File đính kèm

  • DATE TIME.jpg
    DATE TIME.jpg
    9 KB · Đọc: 37
Upvote 0
Đã sửa y/c 1 và 2 theo ý bạn.
Anh ơi!
1. Trong trường hợp cho 2 VĐV thi đấu lại ở thời gian tủy ý thì có cách nào để nhập trực tiếp thời gian tùy ý đó vào trong Bảng điểm thi đấu ở mục thời gian không ạ. Hiện tại phải thoát bảng điểm rồi nhập lại thời gian tùy ý đó ở ngoài, nhưng các thông số về trận đấu như điểm rồi lỗi nhắc nhở .. lại phải chỉnh lại cho đúng thời điểm trước đó. Nếu nhập trực tiếp được thời gian tùy ý vào mục thời gian ở Bảng điểm thì tốt quá.

2. Ở mục nhắc nhở và cảnh cáo cũng vậy ạ, đúng là số lần nhắc nhở chỉ tăng chứ không có giảm và số lần cảnh cảo căn cứ theo số lần nhắc nhở. Nhưng có 1 vấn đề nảy sinh đó là khi VĐV bị 1 lần nhắc nhở mà lỡ tay nhấn thành 2 lần nhắc nhở thì không có cách nào để trừ đi 1 lần nhắc nhở cả. Với lại cần để ý đến trường hợp khi 1 VĐV bị 2 lần nhắc nhở rồi, ta lỡ tay nhấn thêm 1 lần nhắc nhở nữa thì rõ ràng lúc đó mục Cảnh cáo nhảy số 1 và VĐV đó bị trừ đi 2 điểm. Sau đó ta phải sửa lại và phải trừ đi 1 lần nhắc nhở cho đúng với VĐV đó, vậy để làm sao khi trừ đi 1 lần nhắc nhở ấy thì mục cảnh cáo sẽ không hiện số 1 nữa.. (Theo em, nên thêm mỗi bên VĐV 2 nút nhấn (+1 và -1) ở mục Nhắc nhở để thay thế phím tắt. Như vậy khi VĐV nào đó bị nhắc nhở thì nhấn +1, còn lỡ may sai sót mà nhấn thêm số lần nhắc nhở của VĐV thì khi chỉnh lại ta nhấn -1, như vậy có vẻ ổn. )
Nhờ anh chỉnh giúp!
 
Upvote 0
Anh chị cho em hỏi, hiện tại code của em khi chạy chỉ áp dụng cho Sheet đang select. Bây giờ em muốn làm sao mỗi lần chạy nó hiện Box để nhập sheet cần tính thì em phải làm thế nào ạ?

Ngoài ra code của em chạy không được nhanh, anh chị có thể làm thế nào để code chạy nhanh hơn không ạ?
 

File đính kèm

Upvote 0
Status
Không mở trả lời sau này.
Web KT

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

Back
Top Bottom