This seems to be a simple question so I am sorry if I should have been able to find it in the search but none of the answers have been able to help me. I am looking for a way to copy range A1:D14 and save it in a new workbook where only the format and values get saved to the new workbook.
So basiaclly I have a range of data that has a lot of formulas and values that come from other sheets, but when my current code saves it, it has to do some weird delete method and it currently saves all of the data which means the values show up, but when I click on them it is the formula inside not the actual data.
Sub SaveData()
Dim SaveFile As String
Dim Title As String
Title = "DigitalStorage"
SaveFile = Application.GetSaveAsFilename(InitialFileName:=Title & "_" & Format(Now, "yyyy-MM-dd hh-mm-ss"), _
fileFilter:="Excel Workbooks (*.xlsx),*.xlsx")
ThisWorkbook.Worksheets("SaveSheet").Copy
With ActiveWorkbook
With .Worksheets("SaveSheet")
ThisWorkbook.Sheets(1).Range("A1:D14").Copy
.Columns("E:ABC").EntireColumn.Delete
.Rows("14:100").EntireRow.Delete
End With
.SaveAs Filename:=SaveFile, FileFormat:=xlOpenXMLWorkbook
.Close savechanges:=False
End With
End Sub
I have tried adding lines where I copy the sheet and PasteSpecial XlValues but that seems to overwrite my original workbook, and I just want the values and format in a plain xlsx file. And I also feel like my code is clunky and convoluted and that there is a much easier way to go about this that looks totally different from my method.