Mình nghĩ bạn có thể viết lệnh trong Workbook_Open, mỗi khi mở file thì nó kiểm tra nếu đúng thì OK. Nếu không đúng (tên file đã bị thay đổi) thì Quit.hailong đã viết:Không cho đổi tên khi chưa mở file.
Trả lời thay Tedaynui nhé.ongtrungducmx25 đã viết:viết như thế nào nhỉ Pác Phước!
Private Sub Workbook_Open()
If ActiveWorkbook.Name <> "vidu.xls" Then Application.Quit
End Sub
chibi đã viết:Trả lời thay Tedaynui nhé.
Mã:Private Sub Workbook_Open() If ActiveWorkbook.Name <> "vidu.xls" Then Application.Quit End Sub
Nguyễn Xuân Sơn đã viết:Theo tôi nghĩ bạn HaiLong đề phòng người khác đổi tên fai thì sẽ ko biết fai ở đâu mà mở nữa. Nên vấn đề là phải làm sao khi có người muốn đổi tên fai ( đổi "trộm" ) thì vô hiệu hóa được hành động này cơ, có phải kop bạn HaiLong?
Thật sự là mình tìm những ý tưởng bảo vệ file 1 cách đơn giản và tương đối an toàn.
Dùng Alt+F11 để vào VBE, bấm đúp chuột vào ThisWorkbook ở khung bên trái và paste đoạn code trên vào phần bên phải. Alt+Q để trở lại. Thế là OKhailong đã viết:Mình hơi củ chuối về VB trong Excel, bạn vui lòng hứơng dẫn chi tiết về cách viết và nhập CODE .
Trả lời thay Tedaynui nhé.
Mã:Private Sub Workbook_Open() If ActiveWorkbook.Name <> "vidu.xls" Then Application.Quit End Sub
Nếu dùng lệnh này, nếu trong file có sẵn các đoạn code rồi. Khi nó thoát ra nó sẽ hỏi có save lại hay không? nhấn vào Yes hoặc No thì nó tắt rồi, Nhưng khi nhấn vào Cancel thì nó vẫn giữ nguyên không đóng file lại. Nhờ bạn tư vấn thêm
Private Sub Workbook_Open()
[a1] = Now
If ActiveWorkbook.Name <> "Vidu.xls" Then
ThisWorkbook.Close (True)
[B][COLOR=darkgreen][/COLOR][/B]End If
End Sub
Ý bạn là có 1 code nào đó ghi vào bảng tính khi mở file cùng với cái dò tên file ?
Như vậy thì nếu không đúng tên thì lưu file rồi thoát. Nhưng cách này mở được như thường nếu như Disable Macro....
Mã:Private Sub Workbook_Open() [a1] = Now If ActiveWorkbook.Name <> "Vidu.xls" Then ThisWorkbook.Close (True) End If End Sub
Không nên dùng Application.Quit vì nếu mở file không đúng tên nó thoát luôn những file khác đang mở. Nến đóng cái file vừa mở lên thôi.
Bạn Hai Lúa Miền Tây thân mến ! Mình không hiểu chỗ này, xin bạn chỉ giúp nhé:
Theo code mà các bạn hướng dẫn thì mình vẫn có thể đổi tên fie được, nhưng khi đổi tên file rồi thì mở không được thôi.
Vậy làm sao biết tên file cũ mà đặt lại tên để mở được file ? ( Với những ai không biết VBA để xem code như mình vậy đó !)
Vậy code là làm thế nào không đổi được tên file khi đang đóng, vậy mới hiệu quả phải không bạn ?
Mình cũng đang mò....mẫm đến với VBA trong excel mong các bạn chỉ giúp !