{"@attributes":{"version":"2.0"},"channel":{"title":"Documentation \u2013 Workbook","link":"https:\/\/docs.aspose.com\/cells\/java\/workbook\/","description":"Recent content in Workbook on Documentation","generator":"Hugo -- gohugo.io","language":"en","item":[{"title":"Java: Add Custom XML Parts and Select them by ID","link":"https:\/\/docs.aspose.com\/cells\/java\/add-custom-xml-parts-and-select-them-by-id\/","pubDate":"Mon, 01 Jan 0001 00:00:00 +0000","guid":"https:\/\/docs.aspose.com\/cells\/java\/add-custom-xml-parts-and-select-them-by-id\/","description":"\n        \n        \n        <h2 id=\"possible-usage-scenarios\"><strong>Possible Usage Scenarios<\/strong><\/h2>\n<p>Custom XML Parts are the XML data that is stored inside the Microsoft Excel documents and are used by the applications that deal with them. There is no direct way of adding them using Microsoft Excel UI at the moment. However, you can add them programmatically in various ways e.g. using\u00a0<em>VSTO<\/em>, using\u00a0<em>Aspose.Cells<\/em>\u00a0etc. Please use\u00a0<a href=\"https:\/\/reference.aspose.com\/cells\/java\/com.aspose.cells\/customxmlpartcollection#add-java.lang.Object-\"><strong>Workbook.getCustomXmlParts().add()<\/strong><\/a>\u00a0method if you want to add Custom XML Part using Aspose.Cells API. You can also set its ID, using the\u00a0<a href=\"https:\/\/reference.aspose.com\/cells\/java\/com.aspose.cells\/customxmlpart#setID-java.lang.String-\"><strong>CustomXmlPart.ID<\/strong><\/a>\u00a0property. Similarly, if you want to select Custom XML Part by ID, you can use\u00a0<a href=\"https:\/\/reference.aspose.com\/cells\/java\/com.aspose.cells\/customxmlpartcollection#selectByID-java.lang.String-\"><strong>Workbook.getCustomXmlParts().selectByID()<\/strong><\/a>\u00a0method.<\/p>\n<h2 id=\"add-custom-xml-parts-and-select-them-by-id\"><strong>Add Custom XML Parts and Select them by ID<\/strong><\/h2>\n<p>The following sample code first adds four Custom XML Parts using\u00a0<a href=\"https:\/\/reference.aspose.com\/cells\/java\/com.aspose.cells\/customxmlpartcollection#add-java.lang.Object-\"><strong>Workbook.getCustomXmlParts().add()<\/strong><\/a>\u00a0method. It then set their IDs using\u00a0<a href=\"https:\/\/reference.aspose.com\/cells\/java\/com.aspose.cells\/customxmlpart#setID-java.lang.String-\"><strong>CustomXmlPart.ID<\/strong><\/a>\u00a0property. Finally, it finds or selects one of the added Custom XML Part using\u00a0<a href=\"https:\/\/reference.aspose.com\/cells\/java\/com.aspose.cells\/customxmlpartcollection#selectByID-java.lang.String-\"><strong>Workbook.getCustomXmlParts().selectByID()<\/strong><\/a>\u00a0method. Please also see the console output of the code given below for a reference.<\/p>\n<h2 id=\"sample-code\"><strong>Sample Code<\/strong><\/h2>\n<script type=\"application\/javascript\" src=\"https:\/\/gist.github.com\/aspose-cells-gists\/5876dc77e47649b66bdb5deefb4b5639.js?file=Workbook-AddCustomXMLPartsAndSelectThemByID.java\"><\/script>\n\n<h2 id=\"console-output\"><strong>Console Output<\/strong><\/h2>\n<p><div class=\"highlight\"><pre class=\"chroma\"><code class=\"language-java\" data-lang=\"java\"><span class=\"nl\">Found:<\/span> <span class=\"n\">CustomXmlPart<\/span> <span class=\"n\">ID<\/span> <span class=\"n\">Sport<\/span><\/code><\/pre><\/div>\n<button class=\"floating-button\" id=\"openModalBtn\">AI Document Assistant<\/button>\n\n<div class=\"modal\" id=\"modal\">\n    <button class=\"close-btn\" id=\"closeModalBtn\">Close<\/button>\n    <iframe src=\"https:\/\/products.aspose.ai\/cells\/chat\/document\/java?source=docs\" frameborder=\"0\" width=\"100%\" height=\"100%\"><\/iframe>\n<\/div>\n\n<style>\n    .floating-button {\n        position: fixed;\n        bottom: 20px;\n        right: 20px;\n        background-color: #007bff;\n        color: white;\n        border: none;\n        padding: 15px 20px;\n        border-radius: 50px;\n        cursor: pointer;\n        font-size: 16px;\n        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);\n        z-index: 999;\n    }\n\n    .modal {\n        display: none;\n        position: fixed;\n        top: 10%;\n        left: 10%;\n        width: 80%;\n        height: 80%;\n        background-color: white;\n        border: none;\n        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);\n        z-index: 1000;\n        padding: 20px;\n        box-sizing: border-box;\n    }\n\n    .close-btn {\n        position: absolute;\n        top: 10px;\n        right: 10px;\n        background-color: #f44336;\n        color: white;\n        border: none;\n        padding: 5px 10px;\n        cursor: pointer;\n        font-size: 16px;\n        border-radius: 3px;\n    }\n<\/style>\n\n<script>\n    const openModalBtn = document.getElementById('openModalBtn');\n    const closeModalBtn = document.getElementById('closeModalBtn');\n    const modal = document.getElementById('modal');\n\n    openModalBtn.addEventListener('click', function() {\n        modal.style.display = 'block';\n    });\n\n    closeModalBtn.addEventListener('click', function() {\n        modal.style.display = 'none';\n    });\n\n    window.addEventListener('click', function(event) {\n        if (event.target === modal) {\n            modal.style.display = 'none';\n        }\n    });\n<\/script>\n<\/p>\n\n      "},{"title":"Java: Create Shared Workbook with Aspose.Cells","link":"https:\/\/docs.aspose.com\/cells\/java\/create-shared-workbook-with-aspose-cells\/","pubDate":"Mon, 01 Jan 0001 00:00:00 +0000","guid":"https:\/\/docs.aspose.com\/cells\/java\/create-shared-workbook-with-aspose-cells\/","description":"\n        \n        \n        <h2 id=\"possible-usage-scenarios\"><strong>Possible Usage Scenarios<\/strong><\/h2>\n<p>Microsoft Excel allows you to share the workbook as shown in the following screenshot. When you share the workbook, then more than one user can edit the workbook on the network. Aspose.Cells enables you to create a shared workbook with\u00a0<a href=\"https:\/\/reference.aspose.com\/cells\/java\/com.aspose.cells\/workbooksettings#setShared-boolean-\"><strong>Workbook.Settings.Shared<\/strong><\/a>\u00a0property.<\/p>\n<p><img src=\"create-shared-workbook-with-aspose-cells_1.png\" alt=\"todo:image_alt_text\"><\/p>\n<h2 id=\"create-shared-workbook-with-asposecells\"><strong>Create Shared Workbook with Aspose.Cells<\/strong><\/h2>\n<p>The following sample code creates a shared workbook by setting\u00a0<a href=\"https:\/\/reference.aspose.com\/cells\/java\/com.aspose.cells\/workbooksettings#setShared-boolean-\"><strong>Workbook.Settings.Shared<\/strong><\/a>\u00a0property as\u00a0<strong>true<\/strong>. When you will open the\u00a0<a href=\"55541801.xlsx\">output Excel file<\/a>\u00a0in Microsoft Excel, you will see\u00a0<em>Shared<\/em>\u00a0with the output workbook name as shown in this screenshot.<\/p>\n<p><img src=\"create-shared-workbook-with-aspose-cells_2.png\" alt=\"todo:image_alt_text\"><\/p>\n<h2 id=\"sample-code\"><strong>Sample Code<\/strong><\/h2>\n<p><script type=\"application\/javascript\" src=\"https:\/\/gist.github.com\/aspose-cells-gists\/5876dc77e47649b66bdb5deefb4b5639.js?file=Examples-src-AsposeCellsExamples-Workbook-CreateSharedWorkbook.java\"><\/script>\n\n<button class=\"floating-button\" id=\"openModalBtn\">AI Document Assistant<\/button>\n\n<div class=\"modal\" id=\"modal\">\n    <button class=\"close-btn\" id=\"closeModalBtn\">Close<\/button>\n    <iframe src=\"https:\/\/products.aspose.ai\/cells\/chat\/document\/java?source=docs\" frameborder=\"0\" width=\"100%\" height=\"100%\"><\/iframe>\n<\/div>\n\n<style>\n    .floating-button {\n        position: fixed;\n        bottom: 20px;\n        right: 20px;\n        background-color: #007bff;\n        color: white;\n        border: none;\n        padding: 15px 20px;\n        border-radius: 50px;\n        cursor: pointer;\n        font-size: 16px;\n        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);\n        z-index: 999;\n    }\n\n    .modal {\n        display: none;\n        position: fixed;\n        top: 10%;\n        left: 10%;\n        width: 80%;\n        height: 80%;\n        background-color: white;\n        border: none;\n        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);\n        z-index: 1000;\n        padding: 20px;\n        box-sizing: border-box;\n    }\n\n    .close-btn {\n        position: absolute;\n        top: 10px;\n        right: 10px;\n        background-color: #f44336;\n        color: white;\n        border: none;\n        padding: 5px 10px;\n        cursor: pointer;\n        font-size: 16px;\n        border-radius: 3px;\n    }\n<\/style>\n\n<script>\n    const openModalBtn = document.getElementById('openModalBtn');\n    const closeModalBtn = document.getElementById('closeModalBtn');\n    const modal = document.getElementById('modal');\n\n    openModalBtn.addEventListener('click', function() {\n        modal.style.display = 'block';\n    });\n\n    closeModalBtn.addEventListener('click', function() {\n        modal.style.display = 'none';\n    });\n\n    window.addEventListener('click', function(event) {\n        if (event.target === modal) {\n            modal.style.display = 'none';\n        }\n    });\n<\/script>\n<\/p>\n\n      "},{"title":"Java: Replace text in a workbook using Regular Expression","link":"https:\/\/docs.aspose.com\/cells\/java\/replace-text-in-a-workbook-using-regular-expression\/","pubDate":"Mon, 01 Jan 0001 00:00:00 +0000","guid":"https:\/\/docs.aspose.com\/cells\/java\/replace-text-in-a-workbook-using-regular-expression\/","description":"\n        \n        \n        <p>Aspose.Cells provides the feature to replace text in a workbook using a regular expression. For this, the API\u00a0provides\u00a0<a href=\"https:\/\/reference.aspose.com\/cells\/java\/com.aspose.cells\/replaceoptions#setRegexKey-boolean-\"><strong>RegexKey<\/strong><\/a>\u00a0property of the\u00a0<a href=\"https:\/\/reference.aspose.com\/cells\/java\/com.aspose.cells\/ReplaceOptions\"><strong>ReplaceOptions<\/strong><\/a>\u00a0class. Setting the\u00a0<a href=\"https:\/\/reference.aspose.com\/cells\/java\/com.aspose.cells\/replaceoptions#setRegexKey-boolean-\"><strong>RegexKey<\/strong><\/a>\u00a0to\u00a0<strong>true<\/strong>\u00a0indicates that the searched key will be a regular expression.<\/p>\n<p>The following code snippet demonstrates the use of the\u00a0<a href=\"https:\/\/reference.aspose.com\/cells\/java\/com.aspose.cells\/replaceoptions#setRegexKey-boolean-\"><strong>RegexKey<\/strong><\/a>\u00a0property\u00a0by using the\u00a0<a href=\"SampleRegexReplace.xlsx\">sample excel file<\/a>. The\u00a0<a href=\"RegexReplace_out.xlsx\">output file<\/a>\u00a0generated by the following code snippet is attached for reference.<\/p>\n<h2 id=\"sample-code\"><strong>Sample Code<\/strong><\/h2>\n<p><script type=\"application\/javascript\" src=\"https:\/\/gist.github.com\/aspose-cells-gists\/5876dc77e47649b66bdb5deefb4b5639.js?file=Examples-src-AsposeCellsExamples-Workbook-RegexReplace-1.java\"><\/script>\n\n<button class=\"floating-button\" id=\"openModalBtn\">AI Document Assistant<\/button>\n\n<div class=\"modal\" id=\"modal\">\n    <button class=\"close-btn\" id=\"closeModalBtn\">Close<\/button>\n    <iframe src=\"https:\/\/products.aspose.ai\/cells\/chat\/document\/java?source=docs\" frameborder=\"0\" width=\"100%\" height=\"100%\"><\/iframe>\n<\/div>\n\n<style>\n    .floating-button {\n        position: fixed;\n        bottom: 20px;\n        right: 20px;\n        background-color: #007bff;\n        color: white;\n        border: none;\n        padding: 15px 20px;\n        border-radius: 50px;\n        cursor: pointer;\n        font-size: 16px;\n        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);\n        z-index: 999;\n    }\n\n    .modal {\n        display: none;\n        position: fixed;\n        top: 10%;\n        left: 10%;\n        width: 80%;\n        height: 80%;\n        background-color: white;\n        border: none;\n        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);\n        z-index: 1000;\n        padding: 20px;\n        box-sizing: border-box;\n    }\n\n    .close-btn {\n        position: absolute;\n        top: 10px;\n        right: 10px;\n        background-color: #f44336;\n        color: white;\n        border: none;\n        padding: 5px 10px;\n        cursor: pointer;\n        font-size: 16px;\n        border-radius: 3px;\n    }\n<\/style>\n\n<script>\n    const openModalBtn = document.getElementById('openModalBtn');\n    const closeModalBtn = document.getElementById('closeModalBtn');\n    const modal = document.getElementById('modal');\n\n    openModalBtn.addEventListener('click', function() {\n        modal.style.display = 'block';\n    });\n\n    closeModalBtn.addEventListener('click', function() {\n        modal.style.display = 'none';\n    });\n\n    window.addEventListener('click', function(event) {\n        if (event.target === modal) {\n            modal.style.display = 'none';\n        }\n    });\n<\/script>\n<\/p>\n\n      "},{"title":"Java: Update Days Preserving History of Revision Logs in Shared Workbook","link":"https:\/\/docs.aspose.com\/cells\/java\/update-days-preserving-history-of-revision-logs-in-shared-workbook\/","pubDate":"Mon, 01 Jan 0001 00:00:00 +0000","guid":"https:\/\/docs.aspose.com\/cells\/java\/update-days-preserving-history-of-revision-logs-in-shared-workbook\/","description":"\n        \n        \n        <h2 id=\"possible-usage-scenarios\"><strong>Possible Usage Scenarios<\/strong><\/h2>\n<p>When you share a workbook, you get an option saying\u00a0<em><strong>Keep change history for N days<\/strong><\/em>\u00a0as shown in the following screenshot. You can update the number of days for preserving history using Aspose.Cells with\u00a0<a href=\"https:\/\/reference.aspose.com\/cells\/java\/com.aspose.cells\/revisionlogcollection#setDaysPreservingHistory-int-\"><strong>WorksheetCollection.RevisionLogs.DaysPreservingHistory<\/strong><\/a>\u00a0property.<\/p>\n<p><img src=\"update-days-preserving-history-of-revision-logs-in-shared-workbook_1.png\" alt=\"todo:image_alt_text\"><\/p>\n<h2 id=\"update-days-preserving-history-of-revision-logs-in-shared-workbook\"><strong>Update Days Preserving History of Revision Logs in Shared Workbook<\/strong><\/h2>\n<p>The following sample code creates an empty workbook, then shares it and updates the revision logs days preserving history to 7 days which is normally 30 days. Please see the\u00a0<a href=\"60489784.xlsx\">output Excel file<\/a>\u00a0generated by the code for a reference.<\/p>\n<h2 id=\"sample-code\"><strong>Sample Code<\/strong><\/h2>\n<p><script type=\"application\/javascript\" src=\"https:\/\/gist.github.com\/aspose-cells-gists\/5876dc77e47649b66bdb5deefb4b5639.js?file=Worksheets-UpdateDaysPreservingHistoryOfRevisionLogsInSharedWorkbook.java\"><\/script>\n\n<button class=\"floating-button\" id=\"openModalBtn\">AI Document Assistant<\/button>\n\n<div class=\"modal\" id=\"modal\">\n    <button class=\"close-btn\" id=\"closeModalBtn\">Close<\/button>\n    <iframe src=\"https:\/\/products.aspose.ai\/cells\/chat\/document\/java?source=docs\" frameborder=\"0\" width=\"100%\" height=\"100%\"><\/iframe>\n<\/div>\n\n<style>\n    .floating-button {\n        position: fixed;\n        bottom: 20px;\n        right: 20px;\n        background-color: #007bff;\n        color: white;\n        border: none;\n        padding: 15px 20px;\n        border-radius: 50px;\n        cursor: pointer;\n        font-size: 16px;\n        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);\n        z-index: 999;\n    }\n\n    .modal {\n        display: none;\n        position: fixed;\n        top: 10%;\n        left: 10%;\n        width: 80%;\n        height: 80%;\n        background-color: white;\n        border: none;\n        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);\n        z-index: 1000;\n        padding: 20px;\n        box-sizing: border-box;\n    }\n\n    .close-btn {\n        position: absolute;\n        top: 10px;\n        right: 10px;\n        background-color: #f44336;\n        color: white;\n        border: none;\n        padding: 5px 10px;\n        cursor: pointer;\n        font-size: 16px;\n        border-radius: 3px;\n    }\n<\/style>\n\n<script>\n    const openModalBtn = document.getElementById('openModalBtn');\n    const closeModalBtn = document.getElementById('closeModalBtn');\n    const modal = document.getElementById('modal');\n\n    openModalBtn.addEventListener('click', function() {\n        modal.style.display = 'block';\n    });\n\n    closeModalBtn.addEventListener('click', function() {\n        modal.style.display = 'none';\n    });\n\n    window.addEventListener('click', function(event) {\n        if (event.target === modal) {\n            modal.style.display = 'none';\n        }\n    });\n<\/script>\n<\/p>\n\n      "},{"title":"Java: Web Extensions - Office Add-ins","link":"https:\/\/docs.aspose.com\/cells\/java\/web-extensions-office-add-ins\/","pubDate":"Mon, 01 Jan 0001 00:00:00 +0000","guid":"https:\/\/docs.aspose.com\/cells\/java\/web-extensions-office-add-ins\/","description":"\n        \n        \n        <p>Web Extensions extend Office applications and interact with the content in Office documents. Web Extensions add additional functionality to the Office client to improve the user experience and productivity.<\/p>\n<p>Aspose.Cells also provides the ability to work with Web Extensions.<\/p>\n<h2 id=\"add-web-extension\"><strong>Add Web Extension<\/strong><\/h2>\n<p>You may add Web Extensions (Office Add-ins) in Excel by clicking the <strong>Insert<\/strong> tab and then clicking the <strong>Store<\/strong>\/<strong>Get Add-ins<\/strong> link. In the Add-ins box, browse for the add\u2011in you want and add it.<\/p>\n<p>Aspose.Cells also provides a feature to add Web Extensions by using the <strong>WebExtension<\/strong> and <strong>WebExtensionTaskPane<\/strong> classes. The following code sample demonstrates the use of the <strong>WebExtension<\/strong> and <strong>WebExtensionTaskPane<\/strong> classes to add a web extension to an Excel file. Please see the <strong>output Excel file<\/strong> (<a href=\"AddWebExtension_Out.xlsx\">AddWebExtension_Out.xlsx<\/a>) generated by the code for reference.<\/p>\n<h3 id=\"sample-code\"><strong>Sample Code<\/strong><\/h3>\n<script type=\"application\/javascript\" src=\"https:\/\/gist.github.com\/aspose-cells-gists\/5876dc77e47649b66bdb5deefb4b5639.js?file=Examples-src-AsposeCellsExamples-Workbook-AddWebExtension-1.java\"><\/script>\n\n<h2 id=\"access-web-extension-information\"><strong>Access Web Extension Information<\/strong><\/h2>\n<p>Aspose.Cells provides the ability to access information about Web Extensions in an Excel file. The following code sample demonstrates how to access web extension information by loading the <a href=\"WebExtensionsSample.xlsx\">sample Excel file<\/a>. Please see the console output generated by the code for reference.<\/p>\n<h3 id=\"sample-code-1\"><strong>Sample Code<\/strong><\/h3>\n<script type=\"application\/javascript\" src=\"https:\/\/gist.github.com\/aspose-cells-gists\/5876dc77e47649b66bdb5deefb4b5639.js?file=Examples-src-AsposeCellsExamples-Workbook-AccessWebExtensionInformation-1.java\"><\/script>\n\n<h3 id=\"console-output\"><strong>Console Output<\/strong><\/h3>\n<p><div class=\"highlight\"><pre class=\"chroma\"><code class=\"language-java\" data-lang=\"java\"><span class=\"nl\">Width:<\/span> <span class=\"n\">350<\/span>\n<span class=\"nl\">\n<\/span><span class=\"nl\">IsVisible:<\/span> <span class=\"n\">True<\/span>\n<span class=\"nl\">\n<\/span><span class=\"nl\">IsLocked:<\/span> <span class=\"n\">False<\/span>\n<span class=\"nl\">\n<\/span><span class=\"nl\">DockState:<\/span> <span class=\"n\">right<\/span>\n<span class=\"nl\">\n<\/span><span class=\"nl\">StoreName:<\/span> <span class=\"n\">en<\/span><span class=\"o\">-<\/span><span class=\"n\">US<\/span>\n<span class=\"nl\">\n<\/span><span class=\"nl\">StoreType:<\/span> <span class=\"n\">OMEX<\/span>\n\n<span class=\"n\">WebExtension<\/span><span class=\"o\">.<\/span><span class=\"na\">Id<\/span><span class=\"o\">:<\/span> <span class=\"n\">95D7ECE8<\/span><span class=\"o\">-<\/span><span class=\"n\">1355<\/span><span class=\"o\">-<\/span><span class=\"n\">492B<\/span><span class=\"o\">-<\/span><span class=\"n\">B6BF<\/span><span class=\"o\">-<\/span><span class=\"n\">27D25D0B0EEF<\/span><\/code><\/pre><\/div>\n<button class=\"floating-button\" id=\"openModalBtn\">AI Document Assistant<\/button>\n\n<div class=\"modal\" id=\"modal\">\n    <button class=\"close-btn\" id=\"closeModalBtn\">Close<\/button>\n    <iframe src=\"https:\/\/products.aspose.ai\/cells\/chat\/document\/java?source=docs\" frameborder=\"0\" width=\"100%\" height=\"100%\"><\/iframe>\n<\/div>\n\n<style>\n    .floating-button {\n        position: fixed;\n        bottom: 20px;\n        right: 20px;\n        background-color: #007bff;\n        color: white;\n        border: none;\n        padding: 15px 20px;\n        border-radius: 50px;\n        cursor: pointer;\n        font-size: 16px;\n        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);\n        z-index: 999;\n    }\n\n    .modal {\n        display: none;\n        position: fixed;\n        top: 10%;\n        left: 10%;\n        width: 80%;\n        height: 80%;\n        background-color: white;\n        border: none;\n        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);\n        z-index: 1000;\n        padding: 20px;\n        box-sizing: border-box;\n    }\n\n    .close-btn {\n        position: absolute;\n        top: 10px;\n        right: 10px;\n        background-color: #f44336;\n        color: white;\n        border: none;\n        padding: 5px 10px;\n        cursor: pointer;\n        font-size: 16px;\n        border-radius: 3px;\n    }\n<\/style>\n\n<script>\n    const openModalBtn = document.getElementById('openModalBtn');\n    const closeModalBtn = document.getElementById('closeModalBtn');\n    const modal = document.getElementById('modal');\n\n    openModalBtn.addEventListener('click', function() {\n        modal.style.display = 'block';\n    });\n\n    closeModalBtn.addEventListener('click', function() {\n        modal.style.display = 'none';\n    });\n\n    window.addEventListener('click', function(event) {\n        if (event.target === modal) {\n            modal.style.display = 'none';\n        }\n    });\n<\/script>\n<\/p>\n\n      "},{"title":"Java: Working with ContentTypeProperties","link":"https:\/\/docs.aspose.com\/cells\/java\/working-with-contenttypeproperties\/","pubDate":"Mon, 01 Jan 0001 00:00:00 +0000","guid":"https:\/\/docs.aspose.com\/cells\/java\/working-with-contenttypeproperties\/","description":"\n        \n        \n        <p>Aspose.Cells provides <a href=\"https:\/\/reference.aspose.com\/cells\/java\/com.aspose.cells\/contenttypepropertycollection#add-java.lang.Object-\"><strong>Workbook.ContentTypeProperties.Add<\/strong><\/a> method to add custom\u00a0ContentTypeProperties to an excel file. You may also make the property optional by setting the\u00a0<a href=\"https:\/\/reference.aspose.com\/cells\/java\/com.aspose.cells\/contenttypeproperty#setNillable-boolean-\"><strong>ContentTypeProperty.IsNillable<\/strong><\/a> property to <strong>true<\/strong>. The following code snippet demonstrates adding optional custom ContentTypeProperties to an excel file. The following image shows both properties that were added by the sample code.<\/p>\n<p><img src=\"working-with-contenttypeproperties_1.jpg\" alt=\"todo:image_alt_text\"><\/p>\n<p>The output file generated by the sample code is attached for reference.<\/p>\n<p><a href=\"WorkingWithContentTypeProperties_out.xlsx\">Output File<\/a><\/p>\n<h2 id=\"sample-code\"><strong>Sample Code<\/strong><\/h2>\n<p><script type=\"application\/javascript\" src=\"https:\/\/gist.github.com\/aspose-cells-gists\/5876dc77e47649b66bdb5deefb4b5639.js?file=Examples-src-AsposeCellsExamples-Workbook-WorkingWithContentTypeProperties-1.java\"><\/script>\n\n<button class=\"floating-button\" id=\"openModalBtn\">AI Document Assistant<\/button>\n\n<div class=\"modal\" id=\"modal\">\n    <button class=\"close-btn\" id=\"closeModalBtn\">Close<\/button>\n    <iframe src=\"https:\/\/products.aspose.ai\/cells\/chat\/document\/java?source=docs\" frameborder=\"0\" width=\"100%\" height=\"100%\"><\/iframe>\n<\/div>\n\n<style>\n    .floating-button {\n        position: fixed;\n        bottom: 20px;\n        right: 20px;\n        background-color: #007bff;\n        color: white;\n        border: none;\n        padding: 15px 20px;\n        border-radius: 50px;\n        cursor: pointer;\n        font-size: 16px;\n        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);\n        z-index: 999;\n    }\n\n    .modal {\n        display: none;\n        position: fixed;\n        top: 10%;\n        left: 10%;\n        width: 80%;\n        height: 80%;\n        background-color: white;\n        border: none;\n        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);\n        z-index: 1000;\n        padding: 20px;\n        box-sizing: border-box;\n    }\n\n    .close-btn {\n        position: absolute;\n        top: 10px;\n        right: 10px;\n        background-color: #f44336;\n        color: white;\n        border: none;\n        padding: 5px 10px;\n        cursor: pointer;\n        font-size: 16px;\n        border-radius: 3px;\n    }\n<\/style>\n\n<script>\n    const openModalBtn = document.getElementById('openModalBtn');\n    const closeModalBtn = document.getElementById('closeModalBtn');\n    const modal = document.getElementById('modal');\n\n    openModalBtn.addEventListener('click', function() {\n        modal.style.display = 'block';\n    });\n\n    closeModalBtn.addEventListener('click', function() {\n        modal.style.display = 'none';\n    });\n\n    window.addEventListener('click', function(event) {\n        if (event.target === modal) {\n            modal.style.display = 'none';\n        }\n    });\n<\/script>\n<\/p>\n\n      "},{"title":"Java: Release Unmanaged Resources of the Workbook","link":"https:\/\/docs.aspose.com\/cells\/java\/release-unmanaged-resources-of-the-workbook\/","pubDate":"Mon, 01 Jan 0001 00:00:00 +0000","guid":"https:\/\/docs.aspose.com\/cells\/java\/release-unmanaged-resources-of-the-workbook\/","description":"\n        \n        \n        \n\n<div class=\"alert alert-primary\" role=\"alert\">\n\nAspose.Cells provides the <a href=\"https:\/\/reference.aspose.com\/cells\/java\/com.aspose.cells\/workbook#dispose--\">Workbook.dispose()<\/a> method to release the unmanaged resources of the <a href=\"https:\/\/reference.aspose.com\/cells\/java\/com.aspose.cells\/Workbook\">Workbook<\/a> object. The dispose pattern is used only for objects that access unmanaged resources, such as file and pipe handles, registry handles, wait handles, or pointers to blocks of unmanaged memory. This is because the garbage collector is very efficient at reclaiming unused managed objects, but it is unable to reclaim unmanaged objects.\n<\/div>\n\n<h2 id=\"release-unmanaged-resources-of-the-workbook\"><strong>Release Unmanaged Resources of the Workbook<\/strong><\/h2>\n<p>The following sample code shows how to make use of the <a href=\"https:\/\/reference.aspose.com\/cells\/java\/com.aspose.cells\/workbook#dispose--\">Workbook.dispose()<\/a> method.<\/p>\n<p><script type=\"application\/javascript\" src=\"https:\/\/gist.github.com\/aspose-cells-gists\/5876dc77e47649b66bdb5deefb4b5639.js?file=Examples-src-main-java-com-aspose-cells-examples-articles-ReleaseUnmanagedResources-ReleaseUnmanagedResources.java\"><\/script>\n\n<button class=\"floating-button\" id=\"openModalBtn\">AI Document Assistant<\/button>\n\n<div class=\"modal\" id=\"modal\">\n    <button class=\"close-btn\" id=\"closeModalBtn\">Close<\/button>\n    <iframe src=\"https:\/\/products.aspose.ai\/cells\/chat\/document\/java?source=docs\" frameborder=\"0\" width=\"100%\" height=\"100%\"><\/iframe>\n<\/div>\n\n<style>\n    .floating-button {\n        position: fixed;\n        bottom: 20px;\n        right: 20px;\n        background-color: #007bff;\n        color: white;\n        border: none;\n        padding: 15px 20px;\n        border-radius: 50px;\n        cursor: pointer;\n        font-size: 16px;\n        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);\n        z-index: 999;\n    }\n\n    .modal {\n        display: none;\n        position: fixed;\n        top: 10%;\n        left: 10%;\n        width: 80%;\n        height: 80%;\n        background-color: white;\n        border: none;\n        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);\n        z-index: 1000;\n        padding: 20px;\n        box-sizing: border-box;\n    }\n\n    .close-btn {\n        position: absolute;\n        top: 10px;\n        right: 10px;\n        background-color: #f44336;\n        color: white;\n        border: none;\n        padding: 5px 10px;\n        cursor: pointer;\n        font-size: 16px;\n        border-radius: 3px;\n    }\n<\/style>\n\n<script>\n    const openModalBtn = document.getElementById('openModalBtn');\n    const closeModalBtn = document.getElementById('closeModalBtn');\n    const modal = document.getElementById('modal');\n\n    openModalBtn.addEventListener('click', function() {\n        modal.style.display = 'block';\n    });\n\n    closeModalBtn.addEventListener('click', function() {\n        modal.style.display = 'none';\n    });\n\n    window.addEventListener('click', function(event) {\n        if (event.target === modal) {\n            modal.style.display = 'none';\n        }\n    });\n<\/script>\n<\/p>\n\n      "},{"title":"Java: Using Custom XML Parts in Aspose.Cells","link":"https:\/\/docs.aspose.com\/cells\/java\/using-custom-xml-parts-in-aspose-cells\/","pubDate":"Mon, 01 Jan 0001 00:00:00 +0000","guid":"https:\/\/docs.aspose.com\/cells\/java\/using-custom-xml-parts-in-aspose-cells\/","description":"\n        \n        \n        \n\n<div class=\"alert alert-primary\" role=\"alert\">\n\n<p>Custom XML Parts are the XML data which is stored by different applications like SharePoint, etc., inside the Excel file. This data is consumed by different applications that need it. Microsoft Excel does not make use of this data, so there is no GUI to add it. You can view this data by changing the extension of a <strong>.xlsx<\/strong> file to <strong>.zip<\/strong> and then opening it using <strong>WinRAR<\/strong>. The data is present inside the <strong>customXml<\/strong> folder as shown in this image.<\/p>\n<p><img src=\"using-custom-xml-parts-in-aspose-cells_1.png\" alt=\"todo:image_alt_text\"><\/p>\n<p>You can add custom XML parts using Aspose.Cells via the <a href=\"https:\/\/reference.aspose.com\/cells\/java\/com.aspose.cells\/contenttypepropertycollection#add-java.lang.Object-\">Workbook.getContentTypeProperties().add()<\/a> method.<\/p>\n\n<\/div>\n\n<h2 id=\"using-custom-xml-parts-in-asposecells\"><strong>Using Custom XML Parts in Aspose.Cells<\/strong><\/h2>\n<p>The following sample code makes use of <a href=\"https:\/\/reference.aspose.com\/cells\/java\/com.aspose.cells\/contenttypepropertycollection#add-java.lang.Object-\">Workbook.getContentTypeProperties().add()<\/a>\u00a0method and adds the <strong>Book Catalog XML<\/strong> with the name <strong>BookStore<\/strong>. The following image shows the result of this code. As you can see, Book Catalog XML is added inside the BookStore node, which is the name of this property.<\/p>\n<p><img src=\"using-custom-xml-parts-in-aspose-cells_2.png\" alt=\"todo:image_alt_text\"><\/p>\n<script type=\"application\/javascript\" src=\"https:\/\/gist.github.com\/aspose-cells-gists\/5876dc77e47649b66bdb5deefb4b5639.js?file=Examples-src-main-java-com-aspose-cells-examples-articles-UsingCustomXmlParts-UsingCustomXmlParts.java\"><\/script>\n\n<h2 id=\"related-article\"><strong>Related Article<\/strong><\/h2>\n<p>\n\n<div class=\"alert alert-primary\" role=\"alert\">\n\n<ul>\n<li><a href=\"https:\/\/docs.aspose.com\/cells\/cells\/java\/adding-custom-properties-visible-inside-document-information-panel\/\">Adding Custom Properties visible inside Document Information Panel<\/a><\/li>\n<\/ul>\n\n<\/div>\n\n<button class=\"floating-button\" id=\"openModalBtn\">AI Document Assistant<\/button>\n\n<div class=\"modal\" id=\"modal\">\n    <button class=\"close-btn\" id=\"closeModalBtn\">Close<\/button>\n    <iframe src=\"https:\/\/products.aspose.ai\/cells\/chat\/document\/java?source=docs\" frameborder=\"0\" width=\"100%\" height=\"100%\"><\/iframe>\n<\/div>\n\n<style>\n    .floating-button {\n        position: fixed;\n        bottom: 20px;\n        right: 20px;\n        background-color: #007bff;\n        color: white;\n        border: none;\n        padding: 15px 20px;\n        border-radius: 50px;\n        cursor: pointer;\n        font-size: 16px;\n        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);\n        z-index: 999;\n    }\n\n    .modal {\n        display: none;\n        position: fixed;\n        top: 10%;\n        left: 10%;\n        width: 80%;\n        height: 80%;\n        background-color: white;\n        border: none;\n        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);\n        z-index: 1000;\n        padding: 20px;\n        box-sizing: border-box;\n    }\n\n    .close-btn {\n        position: absolute;\n        top: 10px;\n        right: 10px;\n        background-color: #f44336;\n        color: white;\n        border: none;\n        padding: 5px 10px;\n        cursor: pointer;\n        font-size: 16px;\n        border-radius: 3px;\n    }\n<\/style>\n\n<script>\n    const openModalBtn = document.getElementById('openModalBtn');\n    const closeModalBtn = document.getElementById('closeModalBtn');\n    const modal = document.getElementById('modal');\n\n    openModalBtn.addEventListener('click', function() {\n        modal.style.display = 'block';\n    });\n\n    closeModalBtn.addEventListener('click', function() {\n        modal.style.display = 'none';\n    });\n\n    window.addEventListener('click', function(event) {\n        if (event.target === modal) {\n            modal.style.display = 'none';\n        }\n    });\n<\/script>\n<\/p>\n\n      "}]}}