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")