Я пишу макрос для Excel в Visual Basi c, где он может взять данные с листа, переместить их на другой лист и выполнить с ним некоторые вычисления. Проблема возникает, когда я сохраняю документ Excel и выхожу, исходный лист удаляется, а новый остается. Я хочу сохранить исходный лист, но понятия не имею, почему он исчезает при каждом сохранении файла.
original = "Original"
sheet_name = "TestSheet"
Sheets(1).Name = original
' Creates a new sheet and names it based on sheet_name
Sheets.Add After:=ActiveSheet
Sheets(2).Name = sheet_name
' Copies the columns from the orginal sheet and moves it to sheet_name
Sheets(original).Columns(1).Copy Destination:=Sheets(sheet_name).Columns(1)
Sheets(original).Columns(3).Copy Destination:=Sheets(sheet_name).Columns(2)
Sheets(original).Columns(6).Copy Destination:=Sheets(sheet_name).Columns(3)
Sheets(original).Columns(10).Copy Destination:=Sheets(sheet_name).Columns(4)
Sheets(original).Columns(12).Copy Destination:=Sheets(sheet_name).Columns(5)
' Copies title name to another cell
Range("M2").Select
ActiveCell.FormulaR1C1 = ""
Range("B2").Select
Selection.Copy
Range("M2").Select
ActiveSheet.Paste
' Creates the titles of O, R, and W
Range("M3").Select
ActiveCell.FormulaR1C1 = "O"
Range("M4").Select
ActiveCell.FormulaR1C1 = "R"
Range("M5").Select
ActiveCell.FormulaR1C1 = "W"
' Calculates the data
Range("C2").Select
Selection.Copy
Range("N4").Select
ActiveSheet.Paste
Range("O3").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "=R[-1]C[-11]*0.3"
Range("O4").Select
ActiveCell.FormulaR1C1 = "=R[-2]C[-11]*0.1"
Range("O5").Select
ActiveCell.FormulaR1C1 = "=R[-3]C[-11]*0.6"
Range("O6").Select