Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Python - Validate if a sheet exists in my document xls

Tags:

python

xls

I am trying to design a small program on my free time which loads an xls file, then select a sheet in the document to be scanned.

Step 1: the user imports an .xls file . After importing the program checks whether the file exists. (That I can do )

Step 2: I ask the user to give the name of the document sheet xls to analyze. And that 's where it stops. the program does not detect the sheets available :(

#check if the document exist
while True:
    x = input("Give the name of the document in this repository__")
    input_filename = x + ".xls"
    if os.path.isfile(input_filename):
        print ("the document is been charged")
        break
    else:
        print("xls not found !")

#Load the document
xls_file = pd.ExcelFile(input_filename)

#Select the good sheet in file
print ("this is your sheets in this document",xls_file.sheet_names)
while True:
    feuilles = input("Select yout sheet")
    input_feuilles = feuilles
    if xls_file.sheet_names(input_filename):
        print ("The sheet is been charged !")
        break
    else:
        print("This sheet don't exist!")

I really do not know how to verify that the sheet filled by the user really exists.

like image 954
Loman Avatar asked Jun 22 '16 11:06

Loman


1 Answers

The Python library openpyxl is designed for reading and writing Excel xlsx/xlsm/xltx/xltm files. The following snippet code checks if a specific sheet name exists in a given workbook.

from openpyxl import load_workbook
 
wb = load_workbook(file_workbook, read_only=True)   # open an Excel file and return a workbook
    
if 'sheet1' in wb.sheetnames:
    print('sheet1 exists')

PS: For older Microsoft Excel files (i.e., .xls), use xlrd and xlwt instead.


Install openpyxl with the following command.

$ sudo pip install openpyxl
like image 111
SparkAndShine Avatar answered Nov 12 '22 08:11

SparkAndShine