Data Validation এবং Dropdown Lists

Java Technologies - অ্যাপাচি পিওআই (Apache POI) - টেবিল এবং ডাটা ম্যানিপুলেশন
185

Apache POI ব্যবহার করে আপনি Excel ফাইলে Data Validation এবং Dropdown Lists তৈরি করতে পারেন। Data Validation আপনাকে Excel শীটে ব্যবহারকারীর ইনপুট সীমাবদ্ধ করার অনুমতি দেয়, যেমন নির্দিষ্ট মান বা ভ্যালিড ডেটা সেটের মধ্যে মান হতে হবে। এর মাধ্যমে আপনি ব্যবহারকারীদের ভুল ইনপুট এড়াতে পারেন। Dropdown Lists এর মাধ্যমে ব্যবহারকারীকে একটি নির্দিষ্ট তালিকা থেকে মান নির্বাচন করতে সাহায্য করা হয়।

এখানে দেখানো হবে কিভাবে আপনি Apache POI ব্যবহার করে Data Validation এবং Dropdown List তৈরি করতে পারেন।


১. Data Validation তৈরি করা

Data Validation ব্যবহারকারীর ইনপুট সীমাবদ্ধ করতে সাহায্য করে, যেমন একটি নির্দিষ্ট সেলের জন্য সংখ্যা বা তারিখ নির্দিষ্ট করা।

উদাহরণ: একটি সেলে সংখ্যা ইনপুটের জন্য Data Validation তৈরি করা

import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.apache.poi.ss.util.AreaReference;
import org.apache.poi.ss.util.CellReference;

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;

public class DataValidationExample {
    public static void main(String[] args) throws IOException {
        // Excel ওয়ার্কবুক তৈরি করা
        Workbook workbook = new XSSFWorkbook();
        Sheet sheet = workbook.createSheet("Sheet 1");

        // Data Validation তৈরি
        DataValidationHelper dataValidationHelper = sheet.getDataValidationHelper();
        DataValidationConstraint constraint = dataValidationHelper.createNumericConstraint(
                DataValidationConstraint.OperatorType.BETWEEN,
                "1", "100"); // 1 থেকে 100 এর মধ্যে সংখ্যার জন্য ভ্যালিডেশন
        CellRangeAddressList addressList = new CellRangeAddressList(0, 0, 0, 0); // প্রথম সারির প্রথম সেল (A1)
        DataValidation validation = dataValidationHelper.createValidation(constraint, addressList);
        sheet.addValidationData(validation);

        // একটি সেলে ভ্যালু লেখার উদাহরণ
        Row row = sheet.createRow(0);
        Cell cell = row.createCell(0);
        cell.setCellValue("Enter a number between 1 and 100");

        // ফাইল সেভ করা
        try (FileOutputStream fileOut = new FileOutputStream(new File("example.xlsx"))) {
            workbook.write(fileOut);
        }

        // ওয়ার্কবুক বন্ধ করা
        workbook.close();
    }
}

ব্যাখ্যা:

  • DataValidationHelper: এটি Data Validation তৈরি করার জন্য ব্যবহার করা হয়।
  • createNumericConstraint: এটি একটি সংখ্যার জন্য validation তৈরি করতে ব্যবহৃত হয়, যেখানে BETWEEN অপারেটর ব্যবহার করে ১ থেকে ১০০ এর মধ্যে মান থাকা প্রয়োজন।
  • CellRangeAddressList: এখানে যেকোনো একটি সেলে (এখানে A1) validation প্রয়োগ করা হয়েছে।
  • addValidationData: শীটে validation যোগ করতে ব্যবহৃত হয়।

২. Dropdown List তৈরি করা

Dropdown List তৈরি করার মাধ্যমে ব্যবহারকারীকে একটি নির্দিষ্ট তালিকা থেকে মান নির্বাচন করতে দেওয়া হয়। এটি Data Validation এর একটি উপাংশ হিসেবে কাজ করে।

উদাহরণ: একটি সেলে Dropdown List তৈরি করা

import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.apache.poi.ss.util.CellRangeAddressList;

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;

public class DropdownListExample {
    public static void main(String[] args) throws IOException {
        // Excel ওয়ার্কবুক তৈরি করা
        Workbook workbook = new XSSFWorkbook();
        Sheet sheet = workbook.createSheet("Sheet 1");

        // Data Validation এর মাধ্যমে Dropdown List তৈরি করা
        DataValidationHelper dataValidationHelper = sheet.getDataValidationHelper();
        DataValidationConstraint constraint = dataValidationHelper.createExplicitListConstraint(
                new String[]{"Option 1", "Option 2", "Option 3", "Option 4"}); // Dropdown options
        CellRangeAddressList addressList = new CellRangeAddressList(0, 0, 0, 0); // প্রথম সারির প্রথম সেল (A1)
        DataValidation validation = dataValidationHelper.createValidation(constraint, addressList);
        sheet.addValidationData(validation);

        // একটি সেলে ভ্যালু লেখার উদাহরণ
        Row row = sheet.createRow(0);
        Cell cell = row.createCell(0);
        cell.setCellValue("Select an option");

        // ফাইল সেভ করা
        try (FileOutputStream fileOut = new FileOutputStream(new File("example.xlsx"))) {
            workbook.write(fileOut);
        }

        // ওয়ার্কবুক বন্ধ করা
        workbook.close();
    }
}

ব্যাখ্যা:

  • createExplicitListConstraint: এটি একটি ড্রপডাউন তালিকা তৈরি করতে ব্যবহৃত হয়। এখানে "Option 1", "Option 2", "Option 3", এবং "Option 4" একটি তালিকা হিসেবে দেয়া হয়েছে।
  • CellRangeAddressList: এখানে যেকোনো একটি সেলে (এখানে A1) ড্রপডাউন তালিকা যোগ করা হয়েছে।
  • addValidationData: শীটে validation (ড্রপডাউন) যোগ করতে ব্যবহৃত হয়।

৩. Multiple Data Validation এবং Dropdown Lists

একই শীটে একাধিক Data Validation এবং Dropdown List যোগ করাও সম্ভব। এখানে একটি উদাহরণ দেওয়া হচ্ছে যেখানে দুটি সেলে (A1 এবং B1) আলাদা Data ValidationDropdown List দেওয়া হবে।

import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.apache.poi.ss.util.CellRangeAddressList;

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;

public class MultipleValidationExample {
    public static void main(String[] args) throws IOException {
        // Excel ওয়ার্কবুক তৈরি করা
        Workbook workbook = new XSSFWorkbook();
        Sheet sheet = workbook.createSheet("Sheet 1");

        // প্রথম সেলে (A1) Data Validation (সংখ্যা 1 থেকে 100 এর মধ্যে)
        DataValidationHelper dataValidationHelper = sheet.getDataValidationHelper();
        DataValidationConstraint constraint = dataValidationHelper.createNumericConstraint(
                DataValidationConstraint.OperatorType.BETWEEN,
                "1", "100");
        CellRangeAddressList addressListA = new CellRangeAddressList(0, 0, 0, 0); // A1 সেল
        DataValidation validationA = dataValidationHelper.createValidation(constraint, addressListA);
        sheet.addValidationData(validationA);

        // দ্বিতীয় সেলে (B1) Dropdown List
        DataValidationConstraint dropdownConstraint = dataValidationHelper.createExplicitListConstraint(
                new String[]{"Option A", "Option B", "Option C"});
        CellRangeAddressList addressListB = new CellRangeAddressList(0, 0, 1, 1); // B1 সেল
        DataValidation validationB = dataValidationHelper.createValidation(dropdownConstraint, addressListB);
        sheet.addValidationData(validationB);

        // A1 এবং B1 সেলে ভ্যালু লেখার উদাহরণ
        Row row = sheet.createRow(0);
        row.createCell(0).setCellValue("Enter a number between 1 and 100");
        row.createCell(1).setCellValue("Select an option");

        // ফাইল সেভ করা
        try (FileOutputStream fileOut = new FileOutputStream(new File("example_multiple_validation.xlsx"))) {
            workbook.write(fileOut);
        }

        // ওয়ার্কবুক বন্ধ করা
        workbook.close();
    }
}

সারাংশ

  • Data Validation: এটি Excel শীটে ইনপুট ডেটা সীমাবদ্ধ করার জন্য ব্যবহৃত হয়। আপনি সংখ্যা, তারিখ, বা লিস্ট এর মাধ্যমে ইনপুট কন্ট্রোল করতে পারেন।
  • Dropdown List: এটি Data Validation এর অংশ হিসেবে ব্যবহৃত হয় এবং ব্যবহারকারীকে একটি নির্দিষ্ট তালিকা থেকে নির্বাচন করতে সাহায্য করে।
  • Apache POI এর মাধ্যমে সহজেই Excel ফাইলে Data Validation এবং Dropdown Lists তৈরি করতে পারেন, যা ব্যবহারকারীর ভুল ইনপুট থেকে বাঁচতে সাহায্য করে।

এভাবে আপনি Apache POI ব্যবহার করে Excel শীটে Data Validation এবং Dropdown Lists তৈরি করতে পারেন।

Content added By
Promotion
NEW SATT AI এখন আপনাকে সাহায্য করতে পারে।

Are you sure to start over?

Loading...