How to get excel sheet name in Python using xlrd

Anand picture Anand · Jun 12, 2014 · Viewed 30.7k times · Source

Please see the code below.

def getSheetName(file_name):
    pointSheetObj = []
    import xlrd as xl
    TeamPointWorkbook = xl.open_workbook(file_name)
    pointSheets = TeamPointWorkbook.sheet_names()

    for i in pointSheets:
        pointSheetObj.append(TeamPointWorkbook.sheet_by_name(i))

I need to get the name of the excel sheet name from the list pointSheetObjby iterating it.

Answer

Anand picture Anand · Jun 12, 2014

I have modified the code I gave as a question and have got what I needed actually,

def getSheetName(file_name):
    pointSheetObj = []
    import xlrd as xl
    TeamPointWorkbook = xl.open_workbook(file_name)
    pointSheets = TeamPointWorkbook.sheet_names()

    for i in pointSheets:
        pointSheetObj.append(tuple((TeamPointWorkbook.sheet_by_name(i),i)))

so if the list (of tuple) pointSheetObj is iterated we have name of the sheet at index 1 of the tuple inside the pointSheetObj.

By doing this I have got the name and the worksheet object with which I can carry on with other sheet related methods.