# IValidation

## Content

<div class="docapp-java-api-doc-main"><style>:not(h1, h2, h3, h4, h5, h6)>code,
:not(h1, h2, h3, h4, h5, h6)>tt {
    font-size: 14px;
    padding-top: 4px;
    margin-top: 8px;
    line-height: 1.4em;
}

.summary-table dt code {
    font-size: 14px;
    vertical-align: top;
    padding-top: 4px;
}

.tab {
    background-color: #0066FF;
    color: #ffffff;
    padding: 8px;
    width: 5em;
    font-weight: bold;
}

/*
 * Styles for page header and footer.
 */
.title {
    color: #2c4557;
    margin: 10px 0;
}

.sub-title {
    margin: 5px 0 0 0;
}

.header ul {
    margin: 0 0 15px 0;
    padding: 0;
}

.header ul li,
.footer ul li {
    list-style: none;
}

/*
 * Styles for headings.
 */
.summary h2,
.details h2,
h2,
.block-list h2 {
    padding: 0;
    margin: 15px 0;
}

.summary h3,
.details h3,
.summary .inherited-list h2 {
    background-color: var(--ds-product-color);
    color: #fff;
    border: 1px solid #d0d9e0;
    padding: 7px 5px;
}

.summary h3 a,
.details h3 a,
.summary .inherited-list h2 a {
    color: #fff !important;
}
/*
 * Styles for page layout containers.
 */
dl.notes>dt {
    font-size: 12px;
    font-weight: bold;
    margin: 10px 0 0 0;
    color: #4E4E4E;
}

dl.notes>dd {
    margin: 5px 10px 10px 0;
    font-size: 14px;
}

dl.name-value>dt {
    margin-left: 1px;
    font-size: 1.1em;
    display: inline;
    font-weight: bold;
}

dl.name-value>dd {
    margin: 0 0 0 1px;
    font-size: 1.1em;
    display: inline;
}

/*
 * Styles for lists.
 */
li.circle {
    list-style: circle;
}

ul.horizontal li {
    display: inline;
    font-size: 0.9em;
}

div.inheritance {
    margin: 0;
    padding: 0;
}

div.inheritance div.inheritance {
    margin-left: 2em;
}

ul.block-list,
ul.details-list,
ul.member-list,
ul.summary-list {
    margin: 10px 0 10px 0;
    padding: 0;
}

ul.block-list>li,
ul.details-list>li,
ul.member-list>li,
ul.summary-list>li {
    list-style: none;
    margin-bottom: 15px;
    line-height: 1.4;
}

.summary-table dl,
.summary-table dl dt,
.summary-table dl dd {
    margin-top: 0;
    margin-bottom: 1px;
}

ul.see-list,
ul.see-list-long {
    padding-left: 0;
    list-style: none;
}

ul.see-list li {
    display: inline;
}

ul.see-list li:not(:last-child):after,
ul.see-list-long li:not(:last-child):after {
    content: ", ";
    white-space: pre-wrap;
}

/*
 * Styles for tables.
 */
.summary-table,
.details-table {
    width: 100%;
    border-spacing: 0;
    border-left: 1px solid #EEE;
    border-right: 1px solid #EEE;
    border-bottom: 1px solid #EEE;
    padding: 0;
}

.caption {
    position: relative;
    text-align: left;
    background-repeat: no-repeat;
    color: #253441;
    font-weight: bold;
    clear: none;
    overflow: hidden;
    padding: 0;
    padding-top: 10px;
    padding-left: 1px;
    margin: 0;
    white-space: pre;
}

.caption a:link,
.caption a:visited {
    color: #1f389c;
}

.caption a:hover,
.caption a:active {
    color: #FFFFFF;
}

.caption span {
    white-space: nowrap;
    padding-top: 5px;
    padding-left: 12px;
    padding-right: 12px;
    padding-bottom: 7px;
    display: inline-block;
    background-color: var(--ds-product-color);
    color: #fff;
    border: none;
}

div.table-tabs {
    padding: 10px 0 0 1px;
    margin: 0;
}

div.table-tabs>button {
    border: none;
    cursor: pointer;
    padding: 5px 12px 7px 12px;
    font-weight: bold;
    margin-right: 3px;
}

div.table-tabs>button.active-table-tab {
    background: var(--ds-product-color);
    color: #fff;
}

div.table-tabs>button.table-tab {
    background: var(--ds-product-color);
    color: #FFFFFF;
    border-bottom: 1px solid #eee;
}

.two-column-summary {
    display: grid;
    grid-template-columns: minmax(15%, max-content) minmax(15%, auto);
}

.three-column-summary {
    display: grid;
    grid-template-columns: minmax(10%, max-content) minmax(15%, max-content) minmax(15%, auto);
}

.four-column-summary {
    display: grid;
    grid-template-columns: minmax(10%, max-content) minmax(10%, max-content) minmax(10%, max-content) minmax(10%, auto);
}

@media screen and (max-width: 600px) {
    .two-column-summary {
        display: grid;
        grid-template-columns: 1fr;
    }
}

@media screen and (max-width: 800px) {
    .three-column-summary {
        display: grid;
        grid-template-columns: minmax(10%, max-content) minmax(25%, auto);
    }

    .three-column-summary .col-last {
        grid-column-end: span 2;
    }
}

@media screen and (max-width: 1000px) {
    .four-column-summary {
        display: grid;
        grid-template-columns: minmax(15%, max-content) minmax(15%, auto);
    }
}

.summary-table>div,
.details-table>div {
    text-align: left;
    padding: 8px 3px 3px 7px;
}

.col-first,
.col-second,
.col-last,
.col-constructor-name,
.col-summary-item-name {
    vertical-align: top;
    padding-right: 0;
    padding-top: 8px;
    padding-bottom: 3px;
}

.table-header {
    background: var(--ds-product-color);
    color: #fff;
    font-weight: bold;
}

.col-first,
.col-first {
    font-size: 13px;
}

.col-second,
.col-second,
.col-last,
.col-constructor-name,
.col-summary-item-name,
.col-last {
    font-size: 13px;
}

.col-first,
.col-second,
.col-constructor-name {
    vertical-align: top;
    overflow: auto;
}

.col-last {
    white-space: normal;
}

.col-first a:link,
.col-first a:visited,
.col-second a:link,
.col-second a:visited,
.col-first a:link,
.col-first a:visited,
.col-second a:link,
.col-second a:visited,
.col-constructor-name a:link,
.col-constructor-name a:visited,
.col-summary-item-name a:link,
.col-summary-item-name a:visited,
.constant-values-container a:link,
.constant-values-container a:visited,
.all-classes-container a:link,
.all-classes-container a:visited,
.all-packages-container a:link,
.all-packages-container a:visited {
    font-weight: bold;
}

.table-sub-heading-color {
    background-color: #EEEEFF;
}

.even-row-color,
.even-row-color .table-header {
    background-color: #FFFFFF;
}

.odd-row-color,
.odd-row-color .table-header {
    background-color: #EEEEEF;
}

/*
 * Styles for contents.
 */
.deprecated-content {
    margin: 0;
    padding: 10px 0;
}

div.block {
    font-size: 14px;
}

.col-last div {
    padding-top: 0;
}

.col-last a {
    padding-bottom: 3px;
}

.module-signature,
.package-signature,
.type-signature,
.member-signature {
    font-size: 14px;
    margin: 14px 0;
    white-space: pre-wrap;
}

.module-signature,
.package-signature,
.type-signature {
    margin-top: 0;
}

.member-signature .type-parameters-long,
.member-signature .parameters,
.member-signature .exceptions {
    display: inline-block;
    vertical-align: top;
    white-space: pre;
}

.member-signature .type-parameters {
    white-space: normal;
}

/*
 * Styles for formatting effect.
 */
.source-line-no {
    color: green;
    padding: 0 30px 0 0;
}

h1.hidden {
    visibility: hidden;
    overflow: hidden;
    font-size: 10px;
}

.block {
    display: block;
    margin: 0 10px 5px 0;
    color: #474747;
}

.deprecated-label,
.descfrm-type-label,
.implementation-label,
.member-name-label,
.member-name-link,
.module-label-in-package,
.module-label-in-type,
.override-specify-label,
.package-label-in-type,
.package-hierarchy-label,
.type-name-label,
.type-name-link,
.search-tag-link,
.preview-label {
    font-weight: bold;
}

.deprecation-block {
    font-size: 14px;
    border-style: solid;
    border-width: thin;
    border-radius: 10px;
    padding: 10px;
    margin-bottom: 10px;
    margin-right: 10px;
    display: inline-block;
}

.preview-block {
    font-size: 14px;
    border-style: solid;
    border-width: thin;
    border-radius: 10px;
    padding: 10px;
    margin-bottom: 10px;
    margin-right: 10px;
    display: inline-block;
}

/*
 * Styles for user-provided tables.
 *
 * borderless:
 *      No borders, vertical margins, styled caption.
 *      This style is provided for use with existing doc comments.
 *      In general, borderless tables should not be used for layout purposes.
 *
 * plain:
 *      Plain borders around table and cells, vertical margins, styled caption.
 *      Best for small tables or for complex tables for tables with cells that span
 *      rows and columns, when the "striped" style does not work well.
 *
 * striped:
 *      Borders around the table and vertical borders between cells, striped rows,
 *      vertical margins, styled caption.
 *      Best for tables that have a header row, and a body containing a series of simple rows.
 */

table.borderless,
table.plain,
table.striped {
    margin-top: 10px;
    margin-bottom: 10px;
}

table.borderless>caption,
table.plain>caption,
table.striped>caption {
    font-weight: bold;
    font-size: smaller;
}

table.borderless th,
table.borderless td,
table.plain th,
table.plain td,
table.striped th,
table.striped td {
    padding: 2px 5px;
}

table.borderless,
table.borderless>thead>tr>th,
table.borderless>tbody>tr>th,
table.borderless>tr>th,
table.borderless>thead>tr>td,
table.borderless>tbody>tr>td,
table.borderless>tr>td {
    border: none;
}

table.borderless>thead>tr,
table.borderless>tbody>tr,
table.borderless>tr {
    background-color: transparent;
}

table.plain {
    border-collapse: collapse;
    border: 1px solid black;
}

table.plain>thead>tr,
table.plain>tbody tr,
table.plain>tr {
    background-color: transparent;
}

table.plain>thead>tr>th,
table.plain>tbody>tr>th,
table.plain>tr>th,
table.plain>thead>tr>td,
table.plain>tbody>tr>td,
table.plain>tr>td {
    border: 1px solid black;
}

table.striped {
    border-collapse: collapse;
    border: 1px solid black;
}

table.striped>thead {
    background-color: #E3E3E3;
}

table.striped>thead>tr>th,
table.striped>thead>tr>td {
    border: 1px solid black;
}

table.striped>tbody>tr:nth-child(even) {
    background-color: #EEE
}

table.striped>tbody>tr:nth-child(odd) {
    background-color: #FFF
}

table.striped>tbody>tr>th,
table.striped>tbody>tr>td {
    border-left: 1px solid black;
    border-right: 1px solid black;
}

table.striped>tbody>tr>th {
    font-weight: normal;
}
</style><h1>Interface IValidation</h1>
<!-- ======== START OF CLASS DATA ======== -->

<section class="class-description" id="class-description">
<hr>
<div class="type-signature"><span class="modifiers">public interface </span><span class="element-name type-name-label">IValidation</span></div>
<div class="block">Represents data validation for a worksheet range. <p>Use  <a href="IRange.html#getValidation()"><code>IRange.getValidation()</code></a> to obtain an <code>IValidation</code> instance for a range and define the allowed data type, comparison rules, formulas, input messages, error messages, and  drop-down behavior for that range. A cell can have only one validation rule applied at a time.</p>
<pre><code data-language="Java">
 worksheet.getRange("A1:A3").setValue(new Object[][] {{"Low"}, {"Medium"}, {"High"}});
 IValidation validation = worksheet.getRange("B2:B5").getValidation();
 validation.add(ValidationType.List, ValidationAlertStyle.Stop, ValidationOperator.Between, "=$A$1:$A$3", null);
 validation.setInCellDropdown(true);
 </code></pre></div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div aria-orientation="horizontal" class="table-tabs" role="tablist"><button aria-controls="method-summary-table.tabpanel" aria-selected="true" class="active-table-tab" id="method-summary-table-tab0" onclick="show('method-summary-table', 'method-summary-table', 3)" onkeydown="switchTab(event)" role="tab" tabindex="0">All Methods</button><button aria-controls="method-summary-table.tabpanel" aria-selected="false" class="table-tab" id="method-summary-table-tab2" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" onkeydown="switchTab(event)" role="tab" tabindex="-1">Instance Methods</button><button aria-controls="method-summary-table.tabpanel" aria-selected="false" class="table-tab" id="method-summary-table-tab3" onclick="show('method-summary-table', 'method-summary-table-tab3', 3)" onkeydown="switchTab(event)" role="tab" tabindex="-1">Abstract Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel">
<div aria-labelledby="method-summary-table-tab0" class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#add(com.grapecity.documents.excel.ValidationType)">add</a><wbr>(<a href="ValidationType.html" title="enum class in com.grapecity.documents.excel">ValidationType</a>&nbsp;type)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Adds data validation to the specified range.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#add(com.grapecity.documents.excel.ValidationType,com.grapecity.documents.excel.ValidationAlertStyle,com.grapecity.documents.excel.ValidationOperator,java.lang.Object,java.lang.Object)">add</a><wbr>(<a href="ValidationType.html" title="enum class in com.grapecity.documents.excel">ValidationType</a>&nbsp;type,
 <a href="ValidationAlertStyle.html" title="enum class in com.grapecity.documents.excel">ValidationAlertStyle</a>&nbsp;alertStyle,
 <a href="ValidationOperator.html" title="enum class in com.grapecity.documents.excel">ValidationOperator</a>&nbsp;validationOperator,
 <a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang">Object</a>&nbsp;formula1,
 <a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang">Object</a>&nbsp;formula2)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Adds data validation to the specified range.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#delete()">delete</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Deletes the object.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#fromJson(java.lang.String)">fromJson</a><wbr>(<a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a>&nbsp;json)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Generates the data validation from the JSON string.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="ValidationAlertStyle.html" title="enum class in com.grapecity.documents.excel">ValidationAlertStyle</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#getAlertStyle()">getAlertStyle</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Gets the  <a href="ValidationAlertStyle.html" title="enum class in com.grapecity.documents.excel"><code>ValidationAlertStyle</code></a> value that specifies the data validation alert style.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#getErrorMessage()">getErrorMessage</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Gets the data validation error message.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#getErrorTitle()">getErrorTitle</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Gets the title of the data-validation error dialog box.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang">Object</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#getFormula1()">getFormula1</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Gets the value or expression associated with the conditional format or data  validation.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang">Object</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#getFormula2()">getFormula2</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Gets the value or expression associated with the second part of a conditional  format or data validation.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#getIgnoreBlank()">getIgnoreBlank</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Gets whether blank values are permitted by the data range validation.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="IMEModeType.html" title="enum class in com.grapecity.documents.excel">IMEModeType</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#getIMEMode()">getIMEMode</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Gets the input method editor (IME) mode for the data validation rule.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#getInCellDropdown()">getInCellDropdown</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Gets whether data validation displays a drop-down list that contains  acceptable values.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#getInputMessage()">getInputMessage</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Gets the data validation input message.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#getInputTitle()">getInputTitle</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Gets the title of the data-validation input dialog box.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="ValidationOperator.html" title="enum class in com.grapecity.documents.excel">ValidationOperator</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#getOperator()">getOperator</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Gets the operator for the conditional format or data validation.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#getShowError()">getShowError</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Gets whether the data validation error message will be displayed whenever the  user enters invalid data.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#getShowInputMessage()">getShowInputMessage</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Gets whether the data validation input message is displayed whenever the user  selects a cell in the data validation range.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="ValidationType.html" title="enum class in com.grapecity.documents.excel">ValidationType</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#getType()">getType</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Gets the data type validation for a range.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#getValue()">getValue</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Gets whether all the validation criteria are met (that is, if the range  contains valid data).</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#setAlertStyle(com.grapecity.documents.excel.ValidationAlertStyle)">setAlertStyle</a><wbr>(<a href="ValidationAlertStyle.html" title="enum class in com.grapecity.documents.excel">ValidationAlertStyle</a>&nbsp;value)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Sets the  <a href="ValidationAlertStyle.html" title="enum class in com.grapecity.documents.excel"><code>ValidationAlertStyle</code></a> value that specifies the data validation alert style.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#setErrorMessage(java.lang.String)">setErrorMessage</a><wbr>(<a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a>&nbsp;value)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Sets the data validation error message.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#setErrorTitle(java.lang.String)">setErrorTitle</a><wbr>(<a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a>&nbsp;value)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Sets the title of the data-validation error dialog box.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#setFormula1(java.lang.Object)">setFormula1</a><wbr>(<a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang">Object</a>&nbsp;value)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Sets the value or expression associated with the conditional format or data  validation.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#setFormula2(java.lang.Object)">setFormula2</a><wbr>(<a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang">Object</a>&nbsp;value)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Sets the value or expression associated with the second part of a conditional  format or data validation.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#setIgnoreBlank(boolean)">setIgnoreBlank</a><wbr>(boolean&nbsp;value)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Sets whether blank values are permitted by the data range validation.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#setIMEMode(com.grapecity.documents.excel.IMEModeType)">setIMEMode</a><wbr>(<a href="IMEModeType.html" title="enum class in com.grapecity.documents.excel">IMEModeType</a>&nbsp;value)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Sets the input method editor (IME) mode for the data validation rule.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#setInCellDropdown(boolean)">setInCellDropdown</a><wbr>(boolean&nbsp;value)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Sets whether data validation displays a drop-down list that contains  acceptable values.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#setInputMessage(java.lang.String)">setInputMessage</a><wbr>(<a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a>&nbsp;value)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Sets the data validation input message.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#setInputTitle(java.lang.String)">setInputTitle</a><wbr>(<a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a>&nbsp;value)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Sets the title of the data-validation input dialog box.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#setOperator(com.grapecity.documents.excel.ValidationOperator)">setOperator</a><wbr>(<a href="ValidationOperator.html" title="enum class in com.grapecity.documents.excel">ValidationOperator</a>&nbsp;value)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Sets the operator for the conditional format or data validation.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#setShowError(boolean)">setShowError</a><wbr>(boolean&nbsp;value)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Sets whether the data validation error message will be displayed whenever the  user enters invalid data.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#setShowInputMessage(boolean)">setShowInputMessage</a><wbr>(boolean&nbsp;value)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Sets whether the data validation input message is displayed whenever the user  selects a cell in the data validation range.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#setType(com.grapecity.documents.excel.ValidationType)">setType</a><wbr>(<a href="ValidationType.html" title="enum class in com.grapecity.documents.excel">ValidationType</a>&nbsp;value)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Sets the data type validation for a range.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a class="member-name-link" href="#toJson()">toJson</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Generates a JSON string from the data validation.</div>
</div>
</div>
</div>
</div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="add(com.grapecity.documents.excel.ValidationType)">
<h3>add</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">add</span><wbr><span class="parameters">(<a href="ValidationType.html" title="enum class in com.grapecity.documents.excel">ValidationType</a>&nbsp;type)</span></div>
<div class="block">Adds data validation to the specified range. <p>Uses the specified  <a href="ValidationType.html" title="enum class in com.grapecity.documents.excel"><code>ValidationType</code></a> to define the validation rule for the range associated with this  <code>IValidation</code> object.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1:A3").getValidation();
 validation.add(ValidationType.None);
 </code></pre></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>type</code> - The validation type to add. Must not be <code>null</code>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="add(com.grapecity.documents.excel.ValidationType,com.grapecity.documents.excel.ValidationAlertStyle,com.grapecity.documents.excel.ValidationOperator,java.lang.Object,java.lang.Object)">
<h3>add</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">add</span><wbr><span class="parameters">(<a href="ValidationType.html" title="enum class in com.grapecity.documents.excel">ValidationType</a>&nbsp;type,
 <a href="ValidationAlertStyle.html" title="enum class in com.grapecity.documents.excel">ValidationAlertStyle</a>&nbsp;alertStyle,
 <a href="ValidationOperator.html" title="enum class in com.grapecity.documents.excel">ValidationOperator</a>&nbsp;validationOperator,
 <a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang">Object</a>&nbsp;formula1,
 <a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang">Object</a>&nbsp;formula2)</span></div>
<div class="block">Adds data validation to the specified range. <p>Uses the specified  <a href="ValidationType.html" title="enum class in com.grapecity.documents.excel"><code>ValidationType</code></a>,  <a href="ValidationAlertStyle.html" title="enum class in com.grapecity.documents.excel"><code>ValidationAlertStyle</code></a>, and  <a href="ValidationOperator.html" title="enum class in com.grapecity.documents.excel"><code>ValidationOperator</code></a> to define the validation rule for the range associated with this  <code>IValidation</code> object.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1").getValidation();
 validation.add(ValidationType.Whole, ValidationAlertStyle.Stop, ValidationOperator.Between, 1, 10);
 </code></pre></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>type</code> - The validation type. Must not be <code>null</code>.</dd>
<dd><code>alertStyle</code> - The validation alert style.</dd>
<dd><code>validationOperator</code> - The data validation operator.</dd>
<dd><code>formula1</code> - The first part of the data validation formula.</dd>
<dd><code>formula2</code> - The second part of the data validation formula when <code>validationOperator</code> is <a href="ValidationOperator.html#Between"><code>ValidationOperator.Between</code></a> or <a href="ValidationOperator.html#NotBetween"><code>ValidationOperator.NotBetween</code></a>; otherwise, this  argument is ignored.</dd>
<dt>Throws:</dt>
<dd><code><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang">IllegalArgumentException</a></code> - if <code>formula1</code> or <code>formula2</code> is not supported for the specified validation rule, or  if  <code>type</code> is <a href="ValidationType.html#Custom"><code>ValidationType.Custom</code></a> and <code>formula1</code> is <code>null</code>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="delete()">
<h3>delete</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">delete</span>()</div>
<div class="block">Deletes the object. <p>Removes the existing data validation rule applied to the associated cell or range.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1:A2").getValidation();
 validation.add(ValidationType.Whole, ValidationAlertStyle.Stop, ValidationOperator.Between, 1, 10);
 validation.delete();
 </code></pre></div>
</section>
</li>
<li>
<section class="detail" id="getAlertStyle()">
<h3>getAlertStyle</h3>
<div class="member-signature"><span class="return-type"><a href="ValidationAlertStyle.html" title="enum class in com.grapecity.documents.excel">ValidationAlertStyle</a></span>&nbsp;<span class="element-name">getAlertStyle</span>()</div>
<div class="block">Gets the  <a href="ValidationAlertStyle.html" title="enum class in com.grapecity.documents.excel"><code>ValidationAlertStyle</code></a> value that specifies the data validation alert style.<p>Returns the  <a href="ValidationAlertStyle.html" title="enum class in com.grapecity.documents.excel"><code>ValidationAlertStyle</code></a> that specifies which icon is shown in the validation error message box when invalid data is entered for the range.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1").getValidation();
 validation.add(ValidationType.Whole, ValidationAlertStyle.Stop, ValidationOperator.Between, 1, 10);
 ValidationAlertStyle alertStyle = validation.getAlertStyle();
 </code></pre></div>
<dl class="notes">
<dt>Returns:</dt>
<dd>The <a href="ValidationAlertStyle.html" title="enum class in com.grapecity.documents.excel"><code>ValidationAlertStyle</code></a> value that specifies the data validation alert style.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setAlertStyle(com.grapecity.documents.excel.ValidationAlertStyle)">
<h3>setAlertStyle</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">setAlertStyle</span><wbr><span class="parameters">(<a href="ValidationAlertStyle.html" title="enum class in com.grapecity.documents.excel">ValidationAlertStyle</a>&nbsp;value)</span></div>
<div class="block">Sets the  <a href="ValidationAlertStyle.html" title="enum class in com.grapecity.documents.excel"><code>ValidationAlertStyle</code></a> value that specifies the data validation alert style.<p>The specified  <a href="ValidationAlertStyle.html" title="enum class in com.grapecity.documents.excel"><code>ValidationAlertStyle</code></a> controls the icon shown in the validation error message box when invalid data is entered for the range.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1").getValidation();
 validation.add(ValidationType.Whole, ValidationAlertStyle.Stop, ValidationOperator.Between, 1, 10);
 validation.setAlertStyle(ValidationAlertStyle.Warning);
 </code></pre></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>value</code> - The <a href="ValidationAlertStyle.html" title="enum class in com.grapecity.documents.excel"><code>ValidationAlertStyle</code></a> value that specifies the data validation alert style. Must not be <code>null</code>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getErrorMessage()">
<h3>getErrorMessage</h3>
<div class="member-signature"><span class="return-type"><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a></span>&nbsp;<span class="element-name">getErrorMessage</span>()</div>
<div class="block">Gets the data validation error message. <p>Use this method to get the message associated with the validation rule  for the range. The message can be configured with  <a href="#setErrorMessage(java.lang.String)"><code>setErrorMessage(String)</code></a> and is used by the data validation error alert.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1").getValidation();
 validation.add(ValidationType.Whole, ValidationAlertStyle.Stop, ValidationOperator.Between, 1, 10);
 validation.setErrorMessage("Input a value between 1 and 10.");
 String errorMessage = validation.getErrorMessage();
 </code></pre></div>
<dl class="notes">
<dt>Returns:</dt>
<dd>The data validation error message.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setErrorMessage(java.lang.String)">
<h3>setErrorMessage</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">setErrorMessage</span><wbr><span class="parameters">(<a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a>&nbsp;value)</span></div>
<div class="block">Sets the data validation error message. <p>Use this property to configure the message associated with the validation rule  for the range.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1").getValidation();
 validation.add(ValidationType.Whole, ValidationAlertStyle.Stop, ValidationOperator.Between, 1, 10);
 validation.setErrorMessage("Input a value between 1 and 10.");
 String errorMessage = validation.getErrorMessage();
 </code></pre></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>value</code> - The data validation error message.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getErrorTitle()">
<h3>getErrorTitle</h3>
<div class="member-signature"><span class="return-type"><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a></span>&nbsp;<span class="element-name">getErrorTitle</span>()</div>
<div class="block">Gets the title of the data-validation error dialog box. <p>This title is shown in the error alert when a user enters invalid data and  error alerts are enabled. Use  <a href="#setErrorTitle(java.lang.String)"><code>setErrorTitle(String)</code></a> to change the title text displayed in the dialog box.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1").getValidation();
 validation.add(ValidationType.Whole, ValidationAlertStyle.Stop, ValidationOperator.Between, 1, 10);
 validation.setErrorTitle("Invalid Number");
 String errorTitle = validation.getErrorTitle();
 </code></pre></div>
<dl class="notes">
<dt>Returns:</dt>
<dd>The title of the data-validation error dialog box, or <code>null</code> if no title has been set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setErrorTitle(java.lang.String)">
<h3>setErrorTitle</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">setErrorTitle</span><wbr><span class="parameters">(<a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a>&nbsp;value)</span></div>
<div class="block">Sets the title of the data-validation error dialog box. <p>Use this property to configure the title shown in the error alert when a user  enters invalid data.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1").getValidation();
 validation.add(ValidationType.Whole, ValidationAlertStyle.Stop, ValidationOperator.Between, 1, 10);
 validation.setErrorTitle("Invalid Number");
 String errorTitle = validation.getErrorTitle();
 </code></pre></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>value</code> - The title of the data-validation error dialog box, or <code>null</code> if no title has been set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getFormula1()">
<h3>getFormula1</h3>
<div class="member-signature"><span class="return-type"><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang">Object</a></span>&nbsp;<span class="element-name">getFormula1</span>()</div>
<div class="block">Gets the value or expression associated with the conditional format or data  validation. <p>The returned object represents the first part of the validation criteria  and can be a constant value, a string value, a cell reference, or a  formula.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1").getValidation();
 validation.add(ValidationType.List, ValidationAlertStyle.Stop, ValidationOperator.Between, "Yes,No,Maybe", null);
 Object formula1 = validation.getFormula1();
 </code></pre></div>
<dl class="notes">
<dt>Returns:</dt>
<dd>The value or expression associated with the conditional format or data validation.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setFormula1(java.lang.Object)">
<h3>setFormula1</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">setFormula1</span><wbr><span class="parameters">(<a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang">Object</a>&nbsp;value)</span></div>
<div class="block">Sets the value or expression associated with the conditional format or data  validation. <p>The assigned value represents the first part of the validation criteria and  can be a constant value, a string value, a cell reference, or a formula.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1").getValidation();
 validation.add(ValidationType.List, ValidationAlertStyle.Stop, ValidationOperator.Between, "Yes,No,Maybe", null);
 validation.setFormula1(100);
 </code></pre></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>value</code> - The value or expression associated with the conditional format or data validation.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getFormula2()">
<h3>getFormula2</h3>
<div class="member-signature"><span class="return-type"><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang">Object</a></span>&nbsp;<span class="element-name">getFormula2</span>()</div>
<div class="block">Gets the value or expression associated with the second part of a conditional  format or data validation. <p>The returned object represents the second comparison value for rules that  use two operands, such as data validation rules that use  <a href="ValidationOperator.html#Between"><code>ValidationOperator.Between</code></a> or <a href="ValidationOperator.html#NotBetween"><code>ValidationOperator.NotBetween</code></a>.  It can be a constant value, a string value, a cell reference, or a formula.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1").getValidation();
 validation.add(ValidationType.Whole, ValidationAlertStyle.Stop, ValidationOperator.Between, 1, 10);
 Object formula2 = validation.getFormula2();
 </code></pre></div>
<dl class="notes">
<dt>Returns:</dt>
<dd>The value or expression associated with the second part of the conditional format or data validation.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setFormula2(java.lang.Object)">
<h3>setFormula2</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">setFormula2</span><wbr><span class="parameters">(<a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang">Object</a>&nbsp;value)</span></div>
<div class="block">Sets the value or expression associated with the second part of a conditional  format or data validation. <p>The assigned value represents the second comparison value for rules that  use two operands, such as data validation rules that use  <a href="ValidationOperator.html#Between"><code>ValidationOperator.Between</code></a> or <a href="ValidationOperator.html#NotBetween"><code>ValidationOperator.NotBetween</code></a>.  It can be a constant value, a string value, a cell reference, or a formula.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1").getValidation();
 validation.add(ValidationType.Whole, ValidationAlertStyle.Stop, ValidationOperator.Between, 1, 10);
 validation.setFormula2(100);
 </code></pre></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>value</code> - The value or expression associated with the second part of the conditional format or data validation.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getIgnoreBlank()">
<h3>getIgnoreBlank</h3>
<div class="member-signature"><span class="return-type">boolean</span>&nbsp;<span class="element-name">getIgnoreBlank</span>()</div>
<div class="block">Gets whether blank values are permitted by the data range validation. <p>When this property returns  <code>true</code>, empty cells in the validated range are allowed  without violating the validation rule.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1:A3").getValidation();
 validation.add(ValidationType.Whole, ValidationAlertStyle.Stop, ValidationOperator.Between, 1, 10);
 validation.setIgnoreBlank(true);
 boolean ignoreBlank = validation.getIgnoreBlank();
 </code></pre></div>
<dl class="notes">
<dt>Returns:</dt>
<dd><code>true</code> if blank values are permitted by the data range validation; otherwise, <code>false</code>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setIgnoreBlank(boolean)">
<h3>setIgnoreBlank</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">setIgnoreBlank</span><wbr><span class="parameters">(boolean&nbsp;value)</span></div>
<div class="block">Sets whether blank values are permitted by the data range validation. <p>When this property is set to  <code>true</code>, empty cells in the validated range are allowed  without violating the validation rule.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1:A3").getValidation();
 validation.add(ValidationType.Whole, ValidationAlertStyle.Stop, ValidationOperator.Between, 1, 10);
 validation.setIgnoreBlank(true);
 </code></pre></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>value</code> - <code>true</code> if blank values are permitted by the data range validation; otherwise, <code>false</code>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getIMEMode()">
<h3>getIMEMode</h3>
<div class="member-signature"><span class="return-type"><a href="IMEModeType.html" title="enum class in com.grapecity.documents.excel">IMEModeType</a></span>&nbsp;<span class="element-name">getIMEMode</span>()</div>
<div class="block">Gets the input method editor (IME) mode for the data validation rule. <p>This value describes the Japanese input rules applied to validated cells.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1").getValidation();
 validation.add(ValidationType.Whole, ValidationAlertStyle.Stop, ValidationOperator.Between, 1, 10);
 validation.setIMEMode(IMEModeType.Hiragana);
 IMEModeType imeMode = validation.getIMEMode();
 </code></pre></div>
<dl class="notes">
<dt>Returns:</dt>
<dd>The IME mode for the data validation rule.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setIMEMode(com.grapecity.documents.excel.IMEModeType)">
<h3>setIMEMode</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">setIMEMode</span><wbr><span class="parameters">(<a href="IMEModeType.html" title="enum class in com.grapecity.documents.excel">IMEModeType</a>&nbsp;value)</span></div>
<div class="block">Sets the input method editor (IME) mode for the data validation rule. <p>Use this property to specify the  <a href="IMEModeType.html" title="enum class in com.grapecity.documents.excel"><code>IMEModeType</code></a> for a data validation rule.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1").getValidation();
 validation.add(ValidationType.Whole, ValidationAlertStyle.Stop, ValidationOperator.Between, 1, 10);
 validation.setIMEMode(IMEModeType.Hiragana);
 </code></pre></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>value</code> - The IME mode to apply to the data validation rule.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getInCellDropdown()">
<h3>getInCellDropdown</h3>
<div class="member-signature"><span class="return-type">boolean</span>&nbsp;<span class="element-name">getInCellDropdown</span>()</div>
<div class="block">Gets whether data validation displays a drop-down list that contains  acceptable values. <p>Use this property to determine whether the validation rule shows an  in-cell list for selecting allowed values. This setting is typically used  with list validation.</p>
<pre><code data-language="Java">
 worksheet.getRange("A1").setValue("Open");
 worksheet.getRange("A2").setValue("Closed");
 IValidation validation = worksheet.getRange("C1").getValidation();
 validation.add(ValidationType.List, ValidationAlertStyle.Stop, ValidationOperator.Between, "=$A$1:$A$2", null);
 boolean inCellDropdown = validation.getInCellDropdown();
 </code></pre></div>
<dl class="notes">
<dt>Returns:</dt>
<dd><code>true</code> if data validation displays a drop-down list of acceptable values; otherwise,  <code>false</code>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setInCellDropdown(boolean)">
<h3>setInCellDropdown</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">setInCellDropdown</span><wbr><span class="parameters">(boolean&nbsp;value)</span></div>
<div class="block">Sets whether data validation displays a drop-down list that contains  acceptable values. <p>Use this property to set whether the validation rule shows an in-cell list for selecting allowed values.</p>
<pre><code data-language="Java">
 worksheet.getRange("A1").setValue("Open");
 worksheet.getRange("A2").setValue("Closed");
 IValidation validation = worksheet.getRange("C1").getValidation();
 validation.add(ValidationType.List, ValidationAlertStyle.Stop, ValidationOperator.Between, "=$A$1:$A$2", null);
 validation.setInCellDropdown(true);
 </code></pre></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>value</code> - <code>true</code> if data validation displays a drop-down list of acceptable values; otherwise,  <code>false</code>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getInputMessage()">
<h3>getInputMessage</h3>
<div class="member-signature"><span class="return-type"><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a></span>&nbsp;<span class="element-name">getInputMessage</span>()</div>
<div class="block">Gets the data validation input message. <p>The input message is displayed when the user selects a cell in the validated  range if input messages are enabled for the validation.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1").getValidation();
 validation.add(ValidationType.Whole, ValidationAlertStyle.Stop, ValidationOperator.Between, 1, 10);
 validation.setInputMessage("Enter a whole number from 1 to 10.");
 String inputMessage = validation.getInputMessage();
 </code></pre></div>
<dl class="notes">
<dt>Returns:</dt>
<dd>The text of the data validation input message. Returns <code>null</code> if no input message has been set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setInputMessage(java.lang.String)">
<h3>setInputMessage</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">setInputMessage</span><wbr><span class="parameters">(<a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a>&nbsp;value)</span></div>
<div class="block">Sets the data validation input message. <p>The input message is displayed when the user selects a cell in the validated  range if input messages are enabled for the validation.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1").getValidation();
 validation.add(ValidationType.Whole, ValidationAlertStyle.Stop, ValidationOperator.Between, 1, 10);
 validation.setInputMessage("Enter a whole number from 1 to 10.");
 String inputMessage = validation.getInputMessage();
 </code></pre></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>value</code> - The text of the data validation input message. Sets <code>null</code> if no input message has been set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getInputTitle()">
<h3>getInputTitle</h3>
<div class="member-signature"><span class="return-type"><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a></span>&nbsp;<span class="element-name">getInputTitle</span>()</div>
<div class="block">Gets the title of the data-validation input dialog box. <p>Use this method to retrieve the title configured for the input prompt of a  validated cell or range.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1").getValidation();
 validation.add(ValidationType.Whole, ValidationAlertStyle.Stop, ValidationOperator.Between, 1, 10);
 validation.setInputTitle("Tips");
 String title = validation.getInputTitle();
 </code></pre></div>
<dl class="notes">
<dt>Returns:</dt>
<dd>The title of the data-validation input dialog box.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setInputTitle(java.lang.String)">
<h3>setInputTitle</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">setInputTitle</span><wbr><span class="parameters">(<a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a>&nbsp;value)</span></div>
<div class="block">Sets the title of the data-validation input dialog box. <p>Use this property to configure the title shown in the input prompt for a  validated cell or range.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1").getValidation();
 validation.add(ValidationType.Whole, ValidationAlertStyle.Stop, ValidationOperator.Between, 1, 10);
 validation.setInputTitle("Tips");
 String inputTitle = validation.getInputTitle();
 </code></pre></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>value</code> - The title of the data-validation input dialog box.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getOperator()">
<h3>getOperator</h3>
<div class="member-signature"><span class="return-type"><a href="ValidationOperator.html" title="enum class in com.grapecity.documents.excel">ValidationOperator</a></span>&nbsp;<span class="element-name">getOperator</span>()</div>
<div class="block">Gets the operator for the conditional format or data validation. <p>The returned  <a href="ValidationOperator.html" title="enum class in com.grapecity.documents.excel"><code>ValidationOperator</code></a> determines how the validation compares the cell value with  <a href="#getFormula1()"><code>getFormula1()</code></a> and, when applicable, <a href="#getFormula2()"><code>getFormula2()</code></a>.  For example,  <a href="ValidationOperator.html#Between"><code>ValidationOperator.Between</code></a> and <a href="ValidationOperator.html#NotBetween"><code>ValidationOperator.NotBetween</code></a> compare the cell value against two formulas.</p>
<pre><code data-language="Java">
 IRange range = worksheet.getRange("A1");
 range.getValidation().add(ValidationType.Whole, ValidationAlertStyle.Stop, ValidationOperator.Between, 1, 10);
 ValidationOperator operator = range.getValidation().getOperator();
 </code></pre></div>
<dl class="notes">
<dt>Returns:</dt>
<dd>The operator used by the conditional format or data validation.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setOperator(com.grapecity.documents.excel.ValidationOperator)">
<h3>setOperator</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">setOperator</span><wbr><span class="parameters">(<a href="ValidationOperator.html" title="enum class in com.grapecity.documents.excel">ValidationOperator</a>&nbsp;value)</span></div>
<div class="block">Sets the operator for the conditional format or data validation. <p>The  <a href="ValidationOperator.html" title="enum class in com.grapecity.documents.excel"><code>ValidationOperator</code></a> determines how the validation compares the cell value with  <a href="#getFormula1()"><code>getFormula1()</code></a> and, when applicable, <a href="#getFormula2()"><code>getFormula2()</code></a>.  <a href="ValidationOperator.html#Between"><code>ValidationOperator.Between</code></a> and <a href="ValidationOperator.html#NotBetween"><code>ValidationOperator.NotBetween</code></a> require two formulas.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1").getValidation();
 validation.add(ValidationType.Whole, ValidationAlertStyle.Stop, ValidationOperator.Between, 1, 10);
 validation.setOperator(ValidationOperator.NotBetween);
 </code></pre></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>value</code> - The operator for the conditional format or data validation. Use <a href="ValidationOperator.html#Between"><code>ValidationOperator.Between</code></a> or <a href="ValidationOperator.html#NotBetween"><code>ValidationOperator.NotBetween</code></a> only when both validation formulas are defined.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getShowError()">
<h3>getShowError</h3>
<div class="member-signature"><span class="return-type">boolean</span>&nbsp;<span class="element-name">getShowError</span>()</div>
<div class="block">Gets whether the data validation error message will be displayed whenever the  user enters invalid data. <p>Use  <a href="#setShowError(boolean)"><code>setShowError(boolean)</code></a> to control whether invalid input displays the validation error alert for the range.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1").getValidation();
 validation.add(ValidationType.List, ValidationAlertStyle.Stop, ValidationOperator.Between, "1,2,3", null);
 validation.setShowError(false);
 boolean showError = validation.getShowError();
 </code></pre></div>
<dl class="notes">
<dt>Returns:</dt>
<dd><code>true</code> if the validation error message is displayed when invalid input is entered; otherwise,  <code>false</code>.</dd>
<dt>Throws:</dt>
<dd><code><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang">IllegalArgumentException</a></code> - if no data validation is applied to the range.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setShowError(boolean)">
<h3>setShowError</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">setShowError</span><wbr><span class="parameters">(boolean&nbsp;value)</span></div>
<div class="block">Sets whether the data validation error message will be displayed whenever the  user enters invalid data.
 <pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1").getValidation();
 validation.add(ValidationType.List, ValidationAlertStyle.Stop, ValidationOperator.Between, "1,2,3", null);
 validation.setShowError(false);
 boolean showError = validation.getShowError();
 </code></pre></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>value</code> - <code>true</code> if the validation error message is displayed when invalid input is entered; otherwise,  <code>false</code>.</dd>
<dt>Throws:</dt>
<dd><code><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang">IllegalArgumentException</a></code> - if no data validation is applied to the range.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getShowInputMessage()">
<h3>getShowInputMessage</h3>
<div class="member-signature"><span class="return-type">boolean</span>&nbsp;<span class="element-name">getShowInputMessage</span>()</div>
<div class="block">Gets whether the data validation input message is displayed whenever the user  selects a cell in the data validation range. <p>Use  <a href="#setShowInputMessage(boolean)"><code>setShowInputMessage(boolean)</code></a> to control whether the input message is shown for cells covered by this validation.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1").getValidation();
 validation.add(ValidationType.List, ValidationAlertStyle.Stop, ValidationOperator.Between, "1,2,3", null);
 validation.setShowInputMessage(true);
 boolean showInputMessage = validation.getShowInputMessage();
 </code></pre></div>
<dl class="notes">
<dt>Returns:</dt>
<dd><code>true</code> if the data validation input message is displayed when a user selects a cell in the data validation range; otherwise,  <code>false</code>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setShowInputMessage(boolean)">
<h3>setShowInputMessage</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">setShowInputMessage</span><wbr><span class="parameters">(boolean&nbsp;value)</span></div>
<div class="block">Sets whether the data validation input message is displayed whenever the user  selects a cell in the data validation range.
 <pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1").getValidation();
 validation.add(ValidationType.List, ValidationAlertStyle.Stop, ValidationOperator.Between, "1,2,3", null);
 validation.setShowInputMessage(true);
 </code></pre></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>value</code> - <code>true</code> if the data validation input message is displayed when a user selects a cell in the data validation range; otherwise,  <code>false</code>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getType()">
<h3>getType</h3>
<div class="member-signature"><span class="return-type"><a href="ValidationType.html" title="enum class in com.grapecity.documents.excel">ValidationType</a></span>&nbsp;<span class="element-name">getType</span>()</div>
<div class="block">Gets the data type validation for a range. <p>Returns the current  <code>ValidationType</code> that defines how values in the range are validated.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1").getValidation();
 validation.add(ValidationType.Whole, ValidationAlertStyle.Stop, ValidationOperator.Between, 1, 10);
 ValidationType type = validation.getType();
 </code></pre></div>
<dl class="notes">
<dt>Returns:</dt>
<dd>The validation type for the range.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setType(com.grapecity.documents.excel.ValidationType)">
<h3>setType</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">setType</span><wbr><span class="parameters">(<a href="ValidationType.html" title="enum class in com.grapecity.documents.excel">ValidationType</a>&nbsp;value)</span></div>
<div class="block">Sets the data type validation for a range. <p>Use this method to change the validation type of an existing  <a href="IValidation.html" title="interface in com.grapecity.documents.excel"><code>IValidation</code></a> rule. To fully modify a validation rule, you can use this method together with <a href="#setAlertStyle(com.grapecity.documents.excel.ValidationAlertStyle)"><code>setAlertStyle(ValidationAlertStyle)</code></a> and <a href="#setOperator(com.grapecity.documents.excel.ValidationOperator)"><code>setOperator(ValidationOperator)</code></a>.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1:A2").getValidation();
 validation.add(ValidationType.Date, ValidationAlertStyle.Stop, ValidationOperator.Between, "13:30:00", "18:30:00");
 validation.setType(ValidationType.Time);
 </code></pre></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>value</code> - The <a href="ValidationType.html" title="enum class in com.grapecity.documents.excel"><code>ValidationType</code></a> to apply to the range. Must not be <code>null</code>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getValue()">
<h3>getValue</h3>
<div class="member-signature"><span class="return-type">boolean</span>&nbsp;<span class="element-name">getValue</span>()</div>
<div class="block">Gets whether all the validation criteria are met (that is, if the range  contains valid data). <p>Returns  <code>true</code> when the current value in the validated range satisfies the configured validation settings. If no data validation is applied to the  range, this method returns  <code>true</code>.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1").getValidation();
 validation.add(ValidationType.Whole, ValidationAlertStyle.Stop, ValidationOperator.Between, 1, 10);
 worksheet.getRange("A1").setValue(5);
 boolean isValid = validation.getValue();
 </code></pre></div>
<dl class="notes">
<dt>Returns:</dt>
<dd><code>true</code> if the current value meets all validation criteria; <code>false</code> otherwise.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="fromJson(java.lang.String)">
<h3>fromJson</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">fromJson</span><wbr><span class="parameters">(<a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a>&nbsp;json)</span></div>
<div class="block">Generates the data validation from the JSON string. <p>Calling this method clears the existing data validation in the current range and then applies  the data validation defined by the specified JSON string. If both the current API call and the  JSON content provide range information, the current range is applied and the range information in  the JSON string is ignored.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1:B2").getValidation();
 validation.fromJson("{\"inputTitle\":\"Tip\",\"inputMessage\":\"Value must be between 5 and 20.\"," +
         "\"type\":1,\"condition\":{\"conType\":0,\"compareType\":1,\"item1\":{\"conType\":1," +
         "\"compareType\":3,\"expected\":\"5\",\"integerValue\":true},\"item2\":{\"conType\":1," +
         "\"compareType\":5,\"expected\":\"20\",\"integerValue\":true},\"ignoreBlank\":true},\"ranges\":\"C3:D4\"}");
 </code></pre></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>json</code> - The JSON string that describes the data validation to apply.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="toJson()">
<h3>toJson</h3>
<div class="member-signature"><span class="return-type"><a class="external-link" href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang">String</a></span>&nbsp;<span class="element-name">toJson</span>()</div>
<div class="block">Generates a JSON string from the data validation. <p>Use the returned JSON string to serialize the current validation settings  for reuse with  <a href="#fromJson(java.lang.String)"><code>fromJson(String)</code></a>.</p>
<pre><code data-language="Java">
 IValidation validation = worksheet.getRange("A1").getValidation();
 validation.add(ValidationType.Whole, ValidationAlertStyle.Stop, ValidationOperator.Between, 1, 10);
 String json = validation.toJson();
 </code></pre></div>
<dl class="notes">
<dt>Returns:</dt>
<dd>The JSON string representing the data validation.</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
<script>var evenRowColor = "even-row-color";
var oddRowColor = "odd-row-color";
var tableTab = "table-tab";
var activeTableTab = "active-table-tab";

function show(tableId, selected, columns) {
    if (tableId !== selected) {
        document.querySelectorAll('div.' + tableId + ':not(.' + selected + ')')
            .forEach(function (elem) {
                elem.style.display = 'none';
            });
    }
    document.querySelectorAll('div.' + selected)
        .forEach(function (elem, index) {
            elem.style.display = '';
            var isEvenRow = index % (columns * 2) < columns;
            elem.classList.remove(isEvenRow ? oddRowColor : evenRowColor);
            elem.classList.add(isEvenRow ? evenRowColor : oddRowColor);
        });
    updateTabs(tableId, selected);
}

function updateTabs(tableId, selected) {
    document.querySelector('div#' + tableId + ' .summary-table')
        .setAttribute('aria-labelledby', selected);
    document.querySelectorAll('button[id^="' + tableId + '"]')
        .forEach(function (tab, index) {
            if (selected === tab.id || (tableId === selected && index === 0)) {
                tab.className = activeTableTab;
                tab.setAttribute('aria-selected', true);
                tab.setAttribute('tabindex', 0);
            } else {
                tab.className = tableTab;
                tab.setAttribute('aria-selected', false);
                tab.setAttribute('tabindex', -1);
            }
        });
}

function switchTab(e) {
    var selected = document.querySelector('[aria-selected=true]');
    if (selected) {
        if ((e.keyCode === 37 || e.keyCode === 38) && selected.previousSibling) {
            // left or up arrow key pressed: move focus to previous tab
            selected.previousSibling.click();
            selected.previousSibling.focus();
            e.preventDefault();
        } else if ((e.keyCode === 39 || e.keyCode === 40) && selected.nextSibling) {
            // right or down arrow key pressed: move focus to next tab
            selected.nextSibling.click();
            selected.nextSibling.focus();
            e.preventDefault();
        }
    }
}
</script></div>