- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
本帖最後由 GBKEE 於 2014-1-4 19:37 編輯
回復 35# missbb - Option Explicit
- Sub Ex2()
- Dim f$, fd$, fs$, A As Range, Wb As Workbook
- Set Wb = ThisWorkbook ' 活頁簿 :程式碼所在的
- fd = Wb.Path & "\" ' 存檔的路徑
- Application.DisplayAlerts = False
- Application.ScreenUpdating = False
- With Wb.Sheets("PASSWORD")
- For Each A In .Range(.[A2], .[A2].End(xlDown))
- f = CStr(A)
- fs = fd & f & ".xls"
- Wb.Sheets(f).UsedRange.Copy '用COPY
- With Workbooks.Add(1)
- With .Sheets(1).Range("A1")
- .PasteSpecial xlPasteValues '貼上值
- .PasteSpecial xlPasteColumnWidths '貼上欄寬
- .PasteSpecial xlPasteFormats '貼上格式
- '第一重:保護工作表
- .Parent.Protect Password:="9999", DrawingObjects:=True, Contents:=True, Scenarios:=True
- End With
- '第二重:保護活頁簿使其structure(結構:工作表不可刪增)。
- .Protect Password:="9999", structure:=True, Windows:=False
- ' FileFormat:=xlExcel8 Excel 2003版本 56; xlExcel12 version 12, or 14, or 15 = Excel 2007, or 2010, or 2013.
- '第三重: 限制使用者
- .SaveAs Filename:=fs, Password:=CStr(A.Offset(, 1)), WriteResPassword:="" , FileFormat:=xlExcel8
- .Close 0 ' 關閉 "D:\A123.xls" 活頁簿、"D:\B456.xls" 活頁簿。
- End With ' 正式結束 (關閉)。
- Next
- End With
- Application.DisplayAlerts = True
- Application.ScreenUpdating = True
- End Sub
複製代碼 |
|