Загрузить только видимые листы из файла Excel

Введение

Когда вы работаете с файлами Excel в своих приложениях .NET, становится очевидной проблема управления несколькими рабочими листами, особенно когда некоторые из них скрыты или не имеют отношения к вашей работе. Aspose.Cells для .NET — это мощная библиотека, которая помогает вам эффективно манипулировать файлами Excel. В этой статье мы рассмотрим, как загружать только видимые листы из файла Excel, отфильтровывая любые скрытые данные. Если вы когда-либо чувствовали себя подавленными при навигации по данным Excel, это руководство для вас!

Предпосылки

Прежде чем приступить к изучению руководства, давайте убедимся, что у вас есть все необходимое для его выполнения:

  1. Базовое понимание C#: это руководство предназначено для разработчиков, знакомых с языком программирования C#.
  2. Aspose.Cells for .NET: Вам необходимо загрузить и настроить библиотеку Aspose.Cells for .NET. Вы можетескачать библиотеку здесь.
  3. Visual Studio или любая другая IDE: у вас должна быть IDE, в которой вы можете писать и тестировать свой код C#.
  4. .NET Framework: убедитесь, что у вас установлен необходимый .NET Framework для запуска ваших приложений.
  5. Образец файла Excel: для практики создайте образец файла Excel или следуйте предоставленному коду. Все готово? Отлично! Давайте приступим!

Импортные пакеты

Одним из первых шагов в любом проекте C#, работающем с Aspose.Cells, является импорт требуемых пакетов. Это позволяет получить доступ ко всем функциям, предоставляемым библиотекой. Вот как это сделать:

  1. Откройте свой проект: начните с открытия своего проекта C# в Visual Studio или любой другой предпочитаемой вами среде IDE.
  2. Добавить ссылки: щелкните правой кнопкой мыши свой проект в обозревателе решений, выберите «Добавить», а затем «Ссылка».
  3. Найдите Aspose.Cells: найдите файл Aspose.Cells.dll, который вы скачали ранее, и добавьте его в ссылки вашего проекта. Этот шаг имеет решающее значение, поскольку он связывает функциональность Aspose.Cells с вашим проектом.
using System.IO;
using Aspose.Cells;
using System;

Теперь, когда вы импортировали необходимые пакеты, мы создадим образец рабочей книги Excel. В этой рабочей книге у нас будет несколько листов, и один из них будет скрыт для этого руководства.

Шаг 1: Настройте свою среду

Сначала настроим среду и укажем пути для файла примера.

// Путь к каталогу документов.
string dataDir = "Your Document Directory";
string sampleFile = "output.xlsx";
string samplePath = dataDir + sampleFile;

В этом фрагменте кода замените"Your Document Directory" на фактический путь, по которому вы хотите сохранить свою книгу.

Шаг 2: Создайте рабочую книгу

Далее давайте создадим рабочую книгу и добавим некоторые данные.

// Создайте образец рабочей тетради
Workbook createWorkbook = new Workbook();
createWorkbook.Worksheets["Sheet1"].Cells["A1"].Value = "Aspose";
createWorkbook.Worksheets.Add("Sheet2").Cells["A1"].Value = "Aspose";
createWorkbook.Worksheets.Add("Sheet3").Cells["A1"].Value = "Aspose";
createWorkbook.Worksheets["Sheet3"].IsVisible = false; // Сделать Sheet3 скрытым
createWorkbook.Save(samplePath);

Вот краткий обзор того, что происходит:

  • Мы создаем новую рабочую книгу и добавляем три листа.
  • «Лист1» и «Лист2» будут видны, а «Лист3» будет скрыт.
  • Затем мы сохраняем книгу по указанному пути.

Шаг 3: Загрузите образец рабочей книги с параметрами загрузки

Теперь, когда у нас есть рабочая книга с видимыми и скрытыми листами, пришло время загрузить ее, убедившись, что мы имеем доступ только к видимым листам.

LoadOptions loadOptions = new LoadOptions();
loadOptions.LoadFilter = new CustomLoad();

Этот фрагмент кода устанавливает параметры загрузки для рабочей книги, которые мы настроим для фильтрации скрытых листов.

Шаг 4: Определите пользовательский фильтр нагрузки

Чтобы загружать только видимые листы, нам нужно создать пользовательский фильтр загрузки. Вот как его определить:

class CustomLoad : LoadFilter
{
    public override void StartSheet(Worksheet sheet)
    {
        if (sheet.IsVisible)
        {
            this.LoadDataFilterOptions = LoadDataFilterOptions.All;
        }
        else
        {
            this.LoadDataFilterOptions = LoadDataFilterOptions.Structure;
        }
    }
}
  • TheStartSheet метод проверяет, виден ли каждый лист.
  • Если он виден, то загружаются все данные с этого листа.
  • Если он не виден, загрузка данных с этого листа пропускается.

Шаг 5: Загрузите рабочую книгу с помощью параметров загрузки

Теперь загрузим рабочую книгу и отобразим данные с видимых листов.

Workbook loadWorkbook = new Workbook(samplePath, loadOptions);
Console.WriteLine("Sheet1: A1: {0}", loadWorkbook.Worksheets["Sheet1"].Cells["A1"].Value);
Console.WriteLine("Sheet2: A1: {0}", loadWorkbook.Worksheets["Sheet2"].Cells["A1"].Value);

Этот фрагмент кода используетloadOptions для импорта данных только из видимых листов и отображения содержимого ячейки A1 из «Листа1» и «Листа2».

Заключение

И вот оно! Вы успешно научились загружать только видимые листы из файла Excel с помощью Aspose.Cells for .NET. Управление листами Excel может быть легким, если вы знаете, как ограничить извлекаемые данные и работать только с тем, что вам нужно. Это не только повышает эффективность ваших приложений, но и делает ваш код чище и проще в управлении.

Часто задаваемые вопросы

Могу ли я при необходимости загрузить скрытые листы?

Да, вы можете просто настроить условия в пользовательском фильтре загрузки, чтобы включить скрытые листы.

Для чего используется Aspose.Cells?

Aspose.Cells используется для работы с файлами Excel без необходимости установки Microsoft Excel, предлагая такие функции, как чтение, запись и управление рабочими листами Excel.

Существует ли пробная версия Aspose.Cells?

Да, ты можешь.загрузить бесплатную пробную версию для проверки его возможностей.

Где я могу найти документацию по Aspose.Cells?

Theдокументация предоставляет исчерпывающую информацию по всем функциям.

Как приобрести Aspose.Cells?

Вы можете легкокупить Aspose.Cells со страницы покупки.