Tự động nhập password khi mở file excel

Liên hệ QC

khanhvc2003

Thành viên mới
Tham gia
10/3/08
Bài viết
34
Được thích
6
Có khoảng 200 files excel đã đặt password, các password không giống nhau. Khi nghỉ việc nhân viên đã bàn giao lại khoảng 15 password để mở các file này.

Mình có ý tưởng viết một add-ins khi mở file lên sẽ đăng nhập với 1 trong 15 password đó.

Mong được trợ giúp.
 
Có khoảng 200 files excel đã đặt password, các password không giống nhau. Khi nghỉ việc nhân viên đã bàn giao lại khoảng 15 password để mở các file này.

Mình có ý tưởng viết một add-ins khi mở file lên sẽ đăng nhập với 1 trong 15 password đó.

Mong được trợ giúp.
Thử triển khai ý tưởng xem sao:
1. "Nhốt" chung tất cả các file vào 1 thư mục.
2. Nhập các tên file và Password vào cột A và B trên sheet (từ hàng 2)
3. Sử dụng code sau để mở file:
PHP:
Sub Test_OpenFile()
    Dim Cll As Range
    On Error Resume Next
    For Each Cll In ActiveSheet.Range([A2], [A10000].End(xlUp))
        Workbooks.Open ThisWorkbook.Path & "\" & Cll.Value, Password:=Cll.Offset(, 1)
    Next
End Sub
Trường hợp đường dẫn đến các file khác nhau thì trên cột A có thể nhập cả đường dẫn đầy đủ đến file và sửa lại code một chút cho phù hợp.
 

File đính kèm

Thử triển khai ý tưởng xem sao:
1. "Nhốt" chung tất cả các file vào 1 thư mục.
2. Nhập các tên file và Password vào cột A và B trên sheet (từ hàng 2)
3. Sử dụng code sau để mở file:
PHP:
Sub Test_OpenFile()
    Dim Cll As Range
    On Error Resume Next
    For Each Cll In ActiveSheet.Range([A2], [A10000].End(xlUp))
        Workbooks.Open ThisWorkbook.Path & "\" & Cll.Value, Password:=Cll.Offset(, 1)
    Next
End Sub
Trường hợp đường dẫn đến các file khác nhau thì trên cột A có thể nhập cả đường dẫn đầy đủ đến file và sửa lại code một chút cho phù hợp.

Cám ơn bạn đã trả lời.

Mình test nhưng không được như ý bạn à.

Trong ví dụ của bạn là file ở dòng

- A2 tương có password ở dòng B2
- A3 tương có password ở dòng B3
- ....

Nếu như mình đảo lộn các nội dung trong cột B thì sẽ không mở được file. Nếu đảo lộn vị trí nội dung của các ô ở cột B vẫn mở được file đấy là cái mình cần.

Ý mình là file trong ô
A2 sẽ sử dụng 1 trong 4 password bên cột B cứ thử cho đến đúng thôi
A3 sẽ sử dụng 1 trong 4 password bên cột B cứ thử cho đến đúng thôi
A4..
A5..
 
Cám ơn bạn đã trả lời.
Mình test nhưng không được như ý bạn à.
Trong ví dụ của bạn là file ở dòng
- A2 tương có password ở dòng B2
- A3 tương có password ở dòng B3
- ....
Nếu như mình đảo lộn các nội dung trong cột B thì sẽ không mở được file. Nếu đảo lộn vị trí nội dung của các ô ở cột B vẫn mở được file đấy là cái mình cần.
Ý mình là file trong ô
A2 sẽ sử dụng 1 trong 4 password bên cột B cứ thử cho đến đúng thôi
A3 sẽ sử dụng 1 trong 4 password bên cột B cứ thử cho đến đúng thôi
A4..
A5..
Vậy thì làm lại vậy:
PHP:
Sub Test_OpenFile()
    Dim FName As Range, FPass As Range, Wb As Workbook
    On Error Resume Next
    With Sheet1
        For Each FName In Range(.[A2], .[A10000].End(xlUp))
            For Each FPass In Range(.[B2], .[B10000].End(xlUp))
                Workbooks.Open ThisWorkbook.Path & "\" & FName, Password:=FPass
                For Each Wb In Workbooks
                    If Wb.Name = FName Then GoTo NextFile
                Next
            Next
NextFile:
        Next
    End With
End Sub
Ở cột A là tất cả tên file cần mở và ở cột B là tất cả password mà bạn có. Trong số các password này, nếu mở được file nào thì code sẽ mở file lên.
 

File đính kèm

Web KT

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

Back
Top Bottom