Sharepoint List Calculated Column If And Statement

SharePoint List Calculated Column IF and Statement Calculator

Build, test, and validate a SharePoint calculated column formula that uses IF with AND logic. Enter two conditions, preview the exact formula syntax, test sample values, and see a visual summary of each condition and the final result.

Formula Builder AND Logic Tester Chart Visualization
Condition 1
Condition 2
Output Settings
Actions
": return wpcLeft !== wpcRight; case ">": return wpcLeft > wpcRight; case "<": return wpcLeft < wpcRight; case ">=": return wpcLeft >= wpcRight; case "<=": return wpcLeft <= wpcRight; default: return false; } } function wpcSafeText(wpcText) { return String(wpcText) .replace(/&/g, "&") .replace(//g, ">") .replace(/"/g, """); } function wpcRenderChart(wpcCond1, wpcCond2, wpcFinal) { var wpcCanvas = document.getElementById("wpc-chart"); if (!wpcCanvas) { return; } if (wpcChartInstance) { wpcChartInstance.destroy(); } wpcChartInstance = new Chart(wpcCanvas, { type: "bar", data: { labels: ["Condition 1", "Condition 2", "AND Result"], datasets: [{ label: "Pass Status", data: [wpcCond1 ? 1 : 0, wpcCond2 ? 1 : 0, wpcFinal ? 1 : 0], backgroundColor: [ wpcCond1 ? "#2563eb" : "#f59e0b", wpcCond2 ? "#2563eb" : "#f59e0b", wpcFinal ? "#16a34a" : "#dc2626" ], borderColor: [ wpcCond1 ? "#1d4ed8" : "#d97706", wpcCond2 ? "#1d4ed8" : "#d97706", wpcFinal ? "#15803d" : "#b91c1c" ], borderWidth: 2, borderRadius: 10 }] }, options: { responsive: true, maintainAspectRatio: false, plugins: { legend: { display: false }, tooltip: { callbacks: { label: function (wpcContext) { return wpcContext.raw === 1 ? "Pass" : "Fail"; } } } }, scales: { y: { beginAtZero: true, max: 1, ticks: { stepSize: 1, callback: function (wpcValue) { return wpcValue === 1 ? "Pass" : "Fail"; }, color: "#475569" }, grid: { color: "#e2e8f0" } }, x: { ticks: { color: "#475569" }, grid: { display: false } } } } }); } function wpcCalculate() { var wpcColumn1Name = document.getElementById("wpc-column1-name").value.trim() || "Column1"; var wpcColumn1Type = document.getElementById("wpc-column1-type").value; var wpcColumn1Operator = document.getElementById("wpc-column1-operator").value; var wpcColumn1Compare = document.getElementById("wpc-column1-compare").value.trim(); var wpcColumn1Test = document.getElementById("wpc-column1-test").value.trim(); var wpcColumn2Name = document.getElementById("wpc-column2-name").value.trim() || "Column2"; var wpcColumn2Type = document.getElementById("wpc-column2-type").value; var wpcColumn2Operator = document.getElementById("wpc-column2-operator").value; var wpcColumn2Compare = document.getElementById("wpc-column2-compare").value.trim(); var wpcColumn2Test = document.getElementById("wpc-column2-test").value.trim(); var wpcReturnType = document.getElementById("wpc-return-type").value; var wpcTrueResult = document.getElementById("wpc-true-result").value.trim(); var wpcFalseResult = document.getElementById("wpc-false-result").value.trim(); var wpcCond1Result = wpcEvaluate( wpcNormalizeValue(wpcColumn1Type, wpcColumn1Test), wpcColumn1Operator, wpcNormalizeValue(wpcColumn1Type, wpcColumn1Compare) ); var wpcCond2Result = wpcEvaluate( wpcNormalizeValue(wpcColumn2Type, wpcColumn2Test), wpcColumn2Operator, wpcNormalizeValue(wpcColumn2Type, wpcColumn2Compare) ); var wpcFinalPass = wpcCond1Result && wpcCond2Result; var wpcFinalOutput; if (wpcReturnType === "number") { var wpcTrueNum = parseFloat(wpcTrueResult); var wpcFalseNum = parseFloat(wpcFalseResult); wpcFinalOutput = wpcFinalPass ? (isNaN(wpcTrueNum) ? 0 : wpcTrueNum) : (isNaN(wpcFalseNum) ? 0 : wpcFalseNum); } else if (wpcReturnType === "boolean") { wpcFinalOutput = wpcFinalPass ? wpcFormatFormulaValue("boolean", wpcTrueResult, true) : wpcFormatFormulaValue("boolean", wpcFalseResult, true); } else { wpcFinalOutput = wpcFinalPass ? wpcTrueResult : wpcFalseResult; } var wpcFormula = '=IF(AND([' + wpcColumn1Name + ']' + wpcColumn1Operator + wpcFormatFormulaValue(wpcColumn1Type, wpcColumn1Compare, false) + ',[' + wpcColumn2Name + ']' + wpcColumn2Operator + wpcFormatFormulaValue(wpcColumn2Type, wpcColumn2Compare, false) + '),' + wpcFormatFormulaValue(wpcReturnType, wpcTrueResult, true) + ',' + wpcFormatFormulaValue(wpcReturnType, wpcFalseResult, true) + ')'; var wpcResults = document.getElementById("wpc-results"); wpcResults.innerHTML = '

Calculated SharePoint Formula

' + '
' + wpcSafeText(wpcFormula) + '
' + '
' + '
Condition 1' + (wpcCond1Result ? 'True' : 'False') + '
' + '
Condition 2' + (wpcCond2Result ? 'True' : 'False') + '
' + '
Final Output' + wpcSafeText(String(wpcFinalOutput)) + '
' + '
' + '

Sample evaluation: SharePoint would return ' + wpcSafeText(String(wpcFinalOutput)) + ' for the test row values you entered.

' + '

Logic summary: AND returns true only when both comparisons pass. In this test, the final AND result is ' + (wpcFinalPass ? 'True' : 'False') + '.

'; wpcRenderChart(wpcCond1Result, wpcCond2Result, wpcFinalPass); } function wpcReset() { document.getElementById("wpc-column1-name").value = "Status"; document.getElementById("wpc-column1-type").value = "text"; document.getElementById("wpc-column1-operator").value = "="; document.getElementById("wpc-column1-compare").value = "Approved"; document.getElementById("wpc-column1-test").value = "Approved"; document.getElementById("wpc-column2-name").value = "Amount"; document.getElementById("wpc-column2-type").value = "number"; document.getElementById("wpc-column2-operator").value = ">"; document.getElementById("wpc-column2-compare").value = "1000"; document.getElementById("wpc-column2-test").value = "1500"; document.getElementById("wpc-return-type").value = "text"; document.getElementById("wpc-true-result").value = "Qualified"; document.getElementById("wpc-false-result").value = "Not Qualified"; wpcCalculate(); } document.getElementById("wpc-calculate-btn").addEventListener("click", wpcCalculate); document.getElementById("wpc-reset-btn").addEventListener("click", wpcReset); wpcCalculate(); })();

Leave a Reply

Your email address will not be published. Required fields are marked *