Создание выпадающего списка в ячейке Excel - C#

Узнай цену своей работы

Формулировка задачи:

Всем здравствуйте!!! Я формирую электронные учебные журналы в виде excel файла для одного учебного заведения. И все почти готово. не знаю только как в ячейку поместить выпадающий список с вариантами оценок(( в интернете ничего не могу найти по поводу того, как это сделать из C#. Очень прошу помощи)!!!
пробую вот так: excelcells.Value2 = new List { 2, 3, 4, 5 }; но конечно же не работает

Решение задачи: «Создание выпадающего списка в ячейке Excel»

textual
Листинг программы
using System;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using Excel = Microsoft.Office.Interop.Excel;
 
namespace Excel_Test
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            string srcFile = Application.StartupPath + "\\Test.xls";
 
            Excel.Application ObjExcel = new Excel.Application();
            ObjExcel.DisplayAlerts = false; 
            Excel.Workbook ObjWorkBook = ObjExcel.Workbooks.Open
                (srcFile, 0, false, 5, "", "", true, Excel.XlPlatform.xlWindows, "", false, false, 0, false, false, Excel.XlCorruptLoad.xlNormalLoad);
            Excel.Worksheet ObjWorkSheet;
            ObjWorkSheet = (Excel.Worksheet)ObjWorkBook.Sheets[1]; // 1-й лист
 
            Excel.Range rng1 = ObjWorkSheet.get_Range("A1:A5", Type.Missing);
 
            rng1.Validation.Delete();
            rng1.Validation.Add (Type:Excel.XlDVType.xlValidateList, AlertStyle:Excel.XlDVAlertStyle.xlValidAlertInformation, 
                Operator:Excel.XlFormatConditionOperator.xlBetween, Formula1:"2,3,4,5");
            rng1.Validation.IgnoreBlank = true;
            rng1.Validation.InCellDropdown = true;
 
            ObjWorkBook.Save();
            ObjWorkBook.Close();
            ObjExcel.Quit();
 
            GC.Collect();
            GC.WaitForPendingFinalizers();
            if (ObjWorkSheet != null) Marshal.FinalReleaseComObject(ObjWorkSheet);
            if (ObjWorkBook != null) Marshal.FinalReleaseComObject(ObjWorkBook);
            if (ObjExcel != null) Marshal.FinalReleaseComObject(ObjExcel);
        }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.8 из 5
Похожие ответы