- 帖子
- 84
- 主題
- 13
- 精華
- 0
- 積分
- 104
- 點名
- 0
- 作業系統
- XP
- 軟體版本
- SP3
- 閱讀權限
- 20
- 性別
- 男
- 註冊時間
- 2012-8-10
- 最後登錄
- 2018-4-21
|
20#
發表於 2012-10-14 16:34
| 只看該作者
回復 19# GBKEE
版大您好!百忙之中又打擾了。您給的語法執行之後,還是會有語法在(所以會產生錯誤),而另外一個舊網頁所談的刪除工作表的巨集語法,在vba好像不能使用,最後小弟繞了一條遠路。就是:
1.先新增一新工作表
2.複製要複製的工作表
3.貼上時使用有條件的貼上選項(這樣就不上複製到工作表內的語法了)
PasteSpecial Paste:=xlPasteValues
PasteSpecial Paste:=xlPasteFormats
4.然後就是之前的語法
全部是
Sub macor24()
'解除保護「成績儲存」表格↓'
Sheets("成績儲存").Unprotect Password:="6323"
ActiveWorkbook.Unprotect Password:="6323"
'解除保護「成績儲存」表格↑'
Sheets.Add After:=Sheets(Sheets.Count)
Sheets("成績儲存").Activate
Sheets("成績儲存").Cells.Copy
Sheets(Sheets.Count).Range("a1").PasteSpecial Paste:=xlPasteValues
Sheets("成績儲存").Activate
Sheets("成績儲存").Cells.Copy
Sheets(Sheets.Count).Range("a1").PasteSpecial Paste:=xlPasteFormats
Dim a, b, u, v, r, n As String
a = Sheets("基本設定").Range("a6").Value
b = Sheets("基本設定").Range("a8").Value
u = Sheets("基本設定").Range("j1").Value
v = Sheets("基本設定").Range("j2").Value
r = "C:\Documents and Settings\Administrator\桌面\"
n = a & "學年度" & b & "學期" & u & "年" & v & "班成績檔"
Sheets(Sheets.Count).Copy
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Filename:=r & n & ".xls", _
FileFormat:=xlExcel8, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
Workbooks(1).Activate
Sheets(Sheets.Count).Delete
'保護「成績儲存」表格↓'
Sheets("成績儲存").Activate
ActiveSheet.EnableSelection = xlUnlockedCells
Sheets("成績儲存").Protect Password:="6323"
ActiveWorkbook.Protect Password:="6323"
'保護「成績儲存」表格↑'
Workbooks(2).Activate
ActiveWorkbook.Close savechanges:=True
End Sub
(抱歉!不是班門弄斧啦,想說以後有人需要,可以參考一下。) |
|