Các Bác bổ sung thêm code giúp Em (thao tác bấm ESC để thoát Form) (1 người xem)

Liên hệ QC

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

ndhmoney686

Thành viên thường trực
Tham gia
25/4/12
Bài viết
376
Được thích
104
Nhân dịp năm mới chúc Em chúc Ban Quản trị và các Thành viên GPE một năm mới mạnh khỏe, hạnh phúc và gặp nhiều may mắn!





Em có 1 file khi bấm vào các ô ko có dữ liệu, mà em đang tô mầu, Thì sẽ có 1 form hiện lên. Các Bác bổ sung thêm giúp Em 1 thao tác là khi form hiện lên. Em có thể thoát form đó bằng cách nhấn phím ESC.



Các Bác xem thêm giúp Em. Khi bấm vào ô ko có dữ liệu, mà em đang tô mầu. Thì có 1 Form hiện lên.
Có thể sửa lại code giúp Em là Khi nhập 1 ký tự bất kỳ vào ô ko có dữ liệu, mà em đang tô mầu. Thì Form mới hiện lên (còn bấm vào thì form ko hiện lên).
Mong các Bác xem giúp Em. Cảm ơn các Bác rất nhiều.
 

File đính kèm

Các Bác đi chơi tết vui nhỉ. Em ko được đi chơi. Phải ở nhà với Bà nội. Mấy năm rồi ko được đi chơi tết. Hic...
 
Upvote 0
Em có 1 file khi bấm vào các ô ko có dữ liệu, mà em đang tô mầu, Thì sẽ có 1 form hiện lên. Các Bác bổ sung thêm giúp Em 1 thao tác là khi form hiện lên. Em có thể thoát form đó bằng cách nhấn phím ESC.
Cách đơn giản nhất là:
- Vẽ 1 CommandButton lên UserForm
- Chỉnh thuộc tính Cancel của CommandButton thành True

Untitled.jpg























Xong, viết code cho CommandButon:
Mã:
Private Sub CommandButton1_Click()
  Unload Me
End Sub
Xong, thu nhỏ chiều rộng của UserForm để giấu đi thằng CommandButton này
Có thể sửa lại code giúp Em là Khi nhập 1 ký tự bất kỳ vào ô ko có dữ liệu, mà em đang tô mầu. Thì Form mới hiện lên (còn bấm vào thì form ko hiện lên).
Mong các Bác xem giúp Em. Cảm ơn các Bác rất nhiều.
Cái này bạn tự mình nghiên cứu đi
 
Upvote 0
Cách đơn giản nhất là:
- Vẽ 1 CommandButton lên UserForm
- Chỉnh thuộc tính Cancel của CommandButton thành True

View attachment 97024























Xong, viết code cho CommandButon:
Mã:
Private Sub CommandButton1_Click()
  Unload Me
End Sub
Xong, thu nhỏ chiều rộng của UserForm để giấu đi thằng CommandButton này

Cái này bạn tự mình nghiên cứu đi


Theo Thầy ndu96081631 hướng dẫn. Bây giờ nhấn ESC thoát được rồi Thầy ạ. Em cảm ơn Thầy. Chúc Thầy và Gia đình một năm mới, mạnh khỏe, hạnh phúc, vạn sự như ý, tài lộc đầy nhà, một năm mới với nhiều niềm vui và hạnh phúc!
 
Upvote 0
Nhân dịp năm mới chúc Em chúc Ban Quản trị và các Thành viên GPE một năm mới mạnh khỏe, hạnh phúc và gặp nhiều may mắn!

Em có 1 file khi bấm vào các ô ko có dữ liệu, mà em đang tô mầu, Thì sẽ có 1 form hiện lên. Các Bác bổ sung thêm giúp Em 1 thao tác là khi form hiện lên. Em có thể thoát form đó bằng cách nhấn phím ESC.



Các Bác xem thêm giúp Em. Khi bấm vào ô ko có dữ liệu, mà em đang tô mầu. Thì có 1 Form hiện lên.
Có thể sửa lại code giúp Em là Khi nhập 1 ký tự bất kỳ vào ô ko có dữ liệu, mà em đang tô mầu. Thì Form mới hiện lên (còn bấm vào thì form ko hiện lên).
Mong các Bác xem giúp Em. Cảm ơn các Bác rất nhiều.


Có thể sửa 1 đoạn code này cho yêu cầu thứ nhất.

Còn yêu cầu thứ 2 mình nghĩ là không thể vì không có sự kiện keydown của cell đâu nhé
Mã:
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 9 Or KeyCode = 40 Then  'phim TAB
   If UserForm1.ListBox1.ListCount = 0 Then
      thoat
      ActiveCell.Activate
   Else
      UserForm1.ListBox1.ListIndex = 0
      UserForm1.ListBox1.SetFocus
   End If
ElseIf KeyCode = 13 Then 'ENTER
   thoat
   If UserForm1.TextBox1.Value <> "" Then ActiveCell.Value = UserForm1.TextBox1.Value
   ActiveCell.Activate
ElseIf KeyCode = 46 Then 'DELETE
   thoat
   ActiveCell.Value = ""
   ActiveCell.Activate
ElseIf KeyCode = 37 Then 'LEFT ARROW
   thoat
   ActiveCell.Offset(, -1).Activate
ElseIf KeyCode = 38 Then
   thoat
   ActiveCell.Offset(-1).Activate 'UP
ElseIf KeyCode = 39 Then
   thoat
   ActiveCell.Offset(, 1).Activate 'Right
[COLOR=#0000ff]ElseIf KeyCode = 27 Then
   thoat
   ActiveCell.Activate 'Cancel[/COLOR]
End If
End Sub
 
Upvote 0

Có thể sửa 1 đoạn code này cho yêu cầu thứ nhất.

Còn yêu cầu thứ 2 mình nghĩ là không thể vì không có sự kiện keydown của cell đâu nhé
Mã:
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 9 Or KeyCode = 40 Then  'phim TAB
   If UserForm1.ListBox1.ListCount = 0 Then
      thoat
      ActiveCell.Activate
   Else
      UserForm1.ListBox1.ListIndex = 0
      UserForm1.ListBox1.SetFocus
   End If
ElseIf KeyCode = 13 Then 'ENTER
   thoat
   If UserForm1.TextBox1.Value <> "" Then ActiveCell.Value = UserForm1.TextBox1.Value
   ActiveCell.Activate
ElseIf KeyCode = 46 Then 'DELETE
   thoat
   ActiveCell.Value = ""
   ActiveCell.Activate
ElseIf KeyCode = 37 Then 'LEFT ARROW
   thoat
   ActiveCell.Offset(, -1).Activate
ElseIf KeyCode = 38 Then
   thoat
   ActiveCell.Offset(-1).Activate 'UP
ElseIf KeyCode = 39 Then
   thoat
   ActiveCell.Offset(, 1).Activate 'Right
[COLOR=#0000ff]ElseIf KeyCode = 27 Then
   thoat
   ActiveCell.Activate 'Cancel[/COLOR]
End If
End Sub

hihi... Ý thứ 2 là Em đang hình dung ko biết có thực hiện được như vậy ko thôi Anh ạ. File này là file của Anh giúp Em đợt trước đấy ạ. Code của file này khi dữ liệu nhiều lên Em thấy nó chạy khá mượt Anh ạ.
Nhân dịp năm mới Em chúc Anh và toàn thể gia đình một năm mới An khang, Thịnh Vượng, Phát tài, Phát lộc, Tiền vào cửa trước, Vàng vào cửa sau, hai cái gặp nhau, chui vào két sắt, một phần mua đất, một phần mua vàng, vẫn còn rênh rang, ta đi du lịch!
 
Upvote 0

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

Back
Top Bottom