各位大大 是這樣的我需要製作一個 EXCEL檔案這是分頁1_這是分頁2_簡單來說,複製分頁後A1公式,自動改為上一個工作表(在工作表二,就"=工作表1!C15+1(在工作表三,就"=工作表2!C15+1大概要做個50個分頁,有嘗試使用VBA去處理,但卡公式中包含分頁名稱分頁名稱不是變數讓我無法在複製後,分頁一起+1另外,我的分頁名稱 希望可以 50001-50030,50031-50060這個我VBA也沒有成功,請問該用甚麼可以解決呢?
給你試試看 希望對你有幫助Sub Add_Sheet()For I = 1 To 50S_Name1 = 50000 + 1 + ((I - 1) * 30)S_Name2 = 50000 + I * 30Sheet_Name = S_Name1 & "-" & S_Name2Worksheets.Add(After:=Worksheets(Worksheets.Count)).Name = Sheet_NameFor J = 1 To 15If I = 1 And J = 1 ThenRange("A" & J) = 500001Range("C" & J).Formula = "=A15+1"ElseIf I <> 1 And J = 1 ThenRange("A" & J).Formula = "='" & Last_Name & "'!C15+1"Range("C" & J).Formula = "=A15+1"ElseRange("A" & J).Formula = "=A" & J - 1 & "+1"Range("C" & J).Formula = "=C" & J - 1 & "+1"End IfEnd IfNext JLast_Name = Sheet_NameNext IEnd Sub
謝謝您的回答可以用!!!!另外我能再請教您一個問題嗎?大大這邊是使用 Worksheets.Add那我如果今天 活頁簿1 中有其他東西,我想使用的是複製頁面因為其他的東西,有可能是表格,文字,不好用VBA去輸入我才會想用複製的方式去處理~那我該如何處理?如 圖中的表格 我想在其他的部分 也都有放進去
Sub Add_Sheet()For I = 1 To 50S_Name1 = 50000 + 1 + ((I - 1) * 30)S_Name2 = 50000 + I * 30Sheet_Name = S_Name1 & "-" & S_Name2'Worksheets.Add(After:=Worksheets(Worksheets.Count)).Name = Sheet_NameWorksheets("工作表1").Copy After:=Worksheets(Sheets.Count)ActiveSheet.Name = Sheet_NameFor J = 1 To 15If I = 1 And J = 1 ThenRange("A" & J) = 500001Range("C" & J).Formula = "=A15+1"ElseIf I <> 1 And J = 1 ThenRange("A" & J).Formula = "='" & Last_Name & "'!C15+1"Range("C" & J).Formula = "=A15+1"ElseRange("A" & J).Formula = "=A" & J - 1 & "+1"Range("C" & J).Formula = "=C" & J - 1 & "+1"End IfEnd IfNext JLast_Name = Sheet_NameNext IEnd Sub