Çalışma Kitabı veya Çalışma Sayfası yüklenirken Nesneleri Filtrele
Olası Kullanım Senaryoları
Lütfen kullanLoadOptions.LoadFilterçalışma kitabından verileri filtrelerken özelliği. Ancak verileri tek tek çalışma sayfalarından filtrelemek istiyorsanız, o zaman geçersiz kılmak zorunda kalacaksınız.LoadFilter.StartSheetyöntem. Lütfen uygun değeri girinLoadDataFilterOptionsoluştururken veya birlikte çalışırken numaralandırmaYük Filtresi.
buLoadDataFilterOptionsnumaralandırma aşağıdaki olası değerlere sahiptir.
- Herşey
- Kitap Ayarları
- HücreBlank
- HücreBool
- Hücre Verileri
- hücre hatası
- HücreSayısal
- hücre dizisi
- Hücre Değeri
- Çizelge
- Koşullu biçimlendirme
- Veri doğrulama
- tanımlı adlar
- Döküman özellikleri
- formül
- köprüler
- BirleştirilmişAlan
- Pivot tablo
- Ayarlar
- Şekil
- SheetData
- Sayfa Ayarları
- Yapı
- stil
- Masa
- VBA
- XmlMap
Çalışma Kitabını yüklerken Nesneleri Filtrele
Aşağıdaki örnek kod, çalışma kitabından grafiklerin nasıl filtreleneceğini gösterir. lütfen kontrol edinizörnek excel dosyası Bu kodda kullanılan veçıkış PDFonun tarafından oluşturulur. PDF çıktısında görebileceğiniz gibi, tüm grafikler çalışma kitabından filtrelendi.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
// Create directory if it is not already present. | |
bool IsExists = System.IO.Directory.Exists(dataDir); | |
if (!IsExists) | |
System.IO.Directory.CreateDirectory(dataDir); | |
// Filter charts from the workbook. | |
LoadOptions lOptions = new LoadOptions(); | |
lOptions.LoadFilter = new LoadFilter(LoadDataFilterOptions.All & ~LoadDataFilterOptions.Chart); | |
// Load the workbook with above filter. | |
Workbook workbook = new Workbook(dataDir + "sampleFilterCharts.xlsx", lOptions); | |
// Save worksheet to a single PDF page. | |
PdfSaveOptions pOptions = new PdfSaveOptions(); | |
pOptions.OnePagePerSheet = true; | |
// Save the workbook in PDF format. | |
workbook.Save(dataDir + "sampleFilterCharts.pdf", pOptions); |
Çalışma Sayfası yüklenirken Nesneleri Filtrele
Aşağıdaki örnek kod,kaynak excel dosyası ve özel bir filtre kullanarak aşağıdaki verileri çalışma sayfalarından filtreler.
- NoCharts adlı çalışma sayfasındaki Grafikleri filtreler.
- NoShapes adlı çalışma sayfasındaki Şekilleri filtreler.
- NoConditionalFormatting adlı çalışma sayfasından Koşullu Biçimlendirmeyi filtreler.
Bir kez, yüklerkaynak excel dosyası özel bir filtre ile tüm çalışma sayfalarının resimlerini tek tek alır. İşte referansınız için çıktı görüntüleri. Gördüğünüz gibi, ilk resimde grafikler yok, ikinci resimde şekiller yok ve üçüncü resimde koşullu biçimlendirme yok.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
public class CustomLoadFilter : LoadFilter | |
{ | |
public override void StartSheet(Worksheet sheet) | |
{ | |
if (sheet.Name == "NoCharts") | |
{ | |
//Load everything and filter charts | |
this.LoadDataFilterOptions = LoadDataFilterOptions.All & ~LoadDataFilterOptions.Chart; | |
} | |
if (sheet.Name == "NoShapes") | |
{ | |
//Load everything and filter shapes | |
this.LoadDataFilterOptions = LoadDataFilterOptions.All & ~LoadDataFilterOptions.Drawing; | |
} | |
if (sheet.Name == "NoConditionalFormatting)") | |
{ | |
//Load everything and filter conditional formatting | |
this.LoadDataFilterOptions = LoadDataFilterOptions.All & ~LoadDataFilterOptions.ConditionalFormatting; | |
} | |
} | |
} |
Bu, CustomLoadFilter sınıfını çalışma sayfası adlarına göre nasıl kullanacağınızdır.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
public static void Run() | |
{ | |
//Source directory | |
string sourceDir = RunExamples.Get_SourceDirectory(); | |
//Output directory | |
string outputDir = RunExamples.Get_OutputDirectory(); | |
// Filter worksheets using CustomLoadFilter class | |
LoadOptions loadOpts = new LoadOptions(); | |
loadOpts.LoadFilter = new CustomLoadFilter(); | |
// Load the workbook with filter defined in CustomLoadFilter class | |
Workbook workbook = new Workbook(sourceDir + "sampleCustomFilteringPerWorksheet.xlsx", loadOpts); | |
// Take the image of all worksheets one by one | |
for (int i = 0; i < workbook.Worksheets.Count; i++) | |
{ | |
// Access worksheet at index i | |
Worksheet worksheet = workbook.Worksheets[i]; | |
// Create an instance of ImageOrPrintOptions | |
// Render entire worksheet to image | |
ImageOrPrintOptions imageOpts = new ImageOrPrintOptions(); | |
imageOpts.OnePagePerSheet = true; | |
imageOpts.ImageType = Drawing.ImageType.Png; | |
// Convert worksheet to image | |
SheetRender render = new SheetRender(worksheet, imageOpts); | |
render.ToImage(0, outputDir + "outputCustomFilteringPerWorksheet_" + worksheet.Name + ".png"); | |
} | |
} |