PRODUCT_NAME_ALT

Merge XLSM to XLTM for Free in swift

Use a free app or Swift SDK to merge XLSM and XLTM, along with several popular formats from Microsoft® Excel.

Swift Code for Merging XLSM Files into XLTM: A Complete Guide

// Converting XLSM to HTML
let cellsApi = try CellsAPI(clientId: "YOUR_APP_SID", clientSecret: "YOUR_APP_KEY");
let expectation = self.expectation(description: "testcellsSaveAsPostDocumentSaveAs")
let name:String = file.XLSM
let saveOptions:SaveOptions? = SaveOptions(enableHTTPCompression: nil, saveFormat: "HTML", clearData: nil, cachedFileFolder: nil, validateMergedAreas: nil, refreshChartCache: nil, createDirectory: nil, sortNames: nil, calculateFormula: nil, checkFontCompatibility: nil, onePagePerSheet: true, compliance: nil, defaultFont: nil, printingPageType: nil, imageType: nil, desiredPPI: nil, jpegQuality: nil, securityOptions: nil)
let newfilename:String = "file"
let isAutoFitRows:Bool? = true
let isAutoFitColumns:Bool? = true
let folder:String = TEMPFOLDER
let storageName:String? = nil            
uploadFile(name: name) {
    CellsAPI.cellsSaveAsPostDocumentSaveAs(name: name, saveOptions: saveOptions, newfilename: newfilename, isAutoFitRows: isAutoFitRows, isAutoFitColumns: isAutoFitColumns, folder: folder, storageName: storageName)
    {
        (response, error) in
        guard error == nil else {
            let errorinfo = self.GetErrorDataInfo(error: error as! ErrorResponse)
            print("error info: \(errorinfo!)")
            return
        }

        if let response = response {
            expectation.fulfill()
        }
    }
}
self.waitForExpectations(timeout: testTimeout, handler: nil)

// Converting HTML to XLTM
let cellsApi = try CellsAPI(clientId: "YOUR_APP_SID", clientSecret: "YOUR_APP_KEY");
let expectation = self.expectation(description: "testcellsSaveAsPostDocumentSaveAs")
let name:String = file.HTML
let saveOptions:SaveOptions? = SaveOptions(enableHTTPCompression: nil, saveFormat: "XLTM", clearData: nil, cachedFileFolder: nil, validateMergedAreas: nil, refreshChartCache: nil, createDirectory: nil, sortNames: nil, calculateFormula: nil, checkFontCompatibility: nil, onePagePerSheet: true, compliance: nil, defaultFont: nil, printingPageType: nil, imageType: nil, desiredPPI: nil, jpegQuality: nil, securityOptions: nil)
let newfilename:String = "file"
let isAutoFitRows:Bool? = true
let isAutoFitColumns:Bool? = true
let folder:String = TEMPFOLDER
let storageName:String? = nil            
uploadFile(name: name) {
    CellsAPI.cellsSaveAsPostDocumentSaveAs(name: name, saveOptions: saveOptions, newfilename: newfilename, isAutoFitRows: isAutoFitRows, isAutoFitColumns: isAutoFitColumns, folder: folder, storageName: storageName)
    {
        (response, error) in
        guard error == nil else {
            let errorinfo = self.GetErrorDataInfo(error: error as! ErrorResponse)
            print("error info: \(errorinfo!)")
            return
        }

        if let response = response {
            expectation.fulfill()
        }
    }
}
self.waitForExpectations(timeout: testTimeout, handler: nil)

How to Megre XLSM to XLTM in Cloud Apps

  1. Initialize WordsApi with Client Id, Client Secret, Base URL & API version
  2. Set requestDocument assign the local XLSM file name
  3. Set requestDocumentListDocumentEntriesFileReference and assign local XLTM file name
  4. Set requestDocumentListDocumentEntries and set file_reference, import_format_mode parameters
  5. Create DocumentEntryList instance and assing requestDocumentListDocumentEntries to document_entries parameter
  6. Call AppendDocumentOnlineRequest to merge XLSM file with XLTM document requestDocument and requestDocumentList
  7. Call WordsApi appendDocumentOnline with parameters

Get Started with Aspose.Total REST APIs

  1. Create an account at Dashboard to get free API quota & authorization details
  2. Get Aspose.Words and Aspose.Cells Cloud SDKs for Swift source code from Aspose.Words GitHub and Aspose.Cells GitHub repos to compile/use the SDK yourself or head to the Releases for alternative download options.
  3. Also have a look at Swagger-based API Reference for Aspose.Words and Aspose.Cells to know more about the REST API.

FAQ

  • What is XLSM Format?
    Files with XLSM extension is a type of Spreadsheet files that support Macros. From application point of view, a Macro is set of instructions that are used for automating processes. A macro is used to record the steps that are performed repeatedly and facilitates performing the actions by running the macro again. Macros are programmed with Microsoft’s Visual Basic for Applications (VBA) from within the Excel Workbook using the Visual Basic Editor and can be run/debug directly from there.
  • What is XLTM Format?
    The XLTM file extension represents files that are generated by Microsoft Excel as Macro-enabled template files. XLTM files are similar to XLTX in structure other than that the later doesn’t support creating template files with macros. Such template files are used to generate and set the layout, formatting, and other settings along with the macros to facilitate creating similar XLSX files then.
  • How can I get started with Aspose.Total REST APIs?
    Quickstart not only guides through the initialization of Aspose.Total Cloud API, it also helps in installing the required libraries.
  • Where can I see the release notes for Aspose.Total Cloud API?
    Complete release notes can be reviewed at Aspose.Total Cloud Documentation.
  • Is it safe to merge XLSM to XLTM in the Cloud?
    Of course! Aspose Cloud uses Amazon EC2 cloud servers that guarantee the security and resilience of the service. Please read more about Aspose's Security Practices.
  • What file formats are supported by Aspose.Total Cloud API?
    Aspose.Total Cloud can merge file formats from any product family to any other product family to PDF, DOCX, XPS, image(TIFF, JPEG, PNG BMP), MD and more. Checkout the complete list of supported file formats.
  • I can not find the SDK for my favorite language. What should I do?
    Aspose.Total Cloud is also available as a Docker Container. Try using it with cURL in case your required SDK is not available yet.