Upptäcka tomma kalkylblad
Kontrollera Populerade celler
Kalkylblad kan ha en eller flera celler som är befolkade med värden där ett värde kan vara enkelt (text, numerisk, datum / tid) eller en formel eller ett formelbaserat värde. I så fall är det lätt att upptäcka om ett visst kalkylblad är tomt eller inte. Flytta Kalkylblad inom Arbetsbok. Allt vi behöver kontrollera är Cells.max_data_row eller Cells.max_data_column egenskap. Om de nämnda egenskaperna returnerar noll eller positiva värden betyder det att en eller flera celler har fyllts i, men om någon av dessa egenskaper returnerar -1 indikerar det att inga av cellerna har fyllts i i det angivna kalkylbladet.
Kontrollera toma initialiserade celler
Alla celler som har värden är automatiskt initialiserade, men det finns en möjlighet att ett arbetsblad har celler endast med formatering. I ett sådant scenario kommer egenskapen Cells.max_data_row eller Cells.max_data_column att returnera -1, vilket indikerar att det inte finns några ifyllda värden, men initialiserade celler kan inte upptäckas med denna metod pga. cellformatet. För att kontrollera om ett arbetsblad har tomma initialiserade celler rekommenderas att använda IEnumerator.MoveNext-metoden på enumeratorn som erhållits från Cells samlingen. Om IEnumerator.MoveNext returnerar true betyder det att det finns en eller flera initialiserade celler i det angivna arbetsbladet.
Kontrollera former
Det är möjligt att ett givet arbetsblad inte har några ifyllda celler, men det kan innehålla former och objekt såsom kontroller, diagram, bilder med mera. Om vi behöver kontrollera om ett arbetsblad innehåller några former kan vi göra det genom att inspektera ShapeCollection element. Ett positivt värde indikerar att det finns form(er) i arbetsbladet.
Programmeringsexempel
from aspose.cells import Workbook | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# The path to the documents directory. | |
dataDir = RunExamples.GetDataDir(".") | |
# Create an instance of Workbook and load an existing spreadsheet | |
book = Workbook(dataDir + "sample.xlsx") | |
# Loop over all worksheets in the workbook | |
for i in range(len(book.worksheets)): | |
sheet = book.worksheets[i] | |
# Check if worksheet has populated cells | |
if sheet.cells.max_data_row != -1: | |
print(sheet.name + " is not empty because one or more cells are populated") | |
else: | |
if len(sheet.shapes) > 0: | |
print(sheet.name + " is not empty because there are one or more shapes") | |
else: | |
range = sheet.cells.max_display_range | |
rangeIterator = range.get_enumerator() | |
if rangeIterator.__next__(): | |
print(sheet.name + " is not empty because one or more cells are initialized") |