I wanted to know if there is a way to find all worksheets that exist within a spreadsheet. I don’t see anything mentioned in the .connection documentation. I found an earlier post (linked below), but I don’t think the method mentioned is currently available. Any help would be greatly appreciated. Thank you!
There’s not an obvious way to do it, but you can if you get the underlying connection object like this:
import streamlit as st
from streamlit_gsheets import GSheetsConnection
conn = st.connection("gsheets", type=GSheetsConnection)
sh = conn._instance._open_spreadsheet()
worksheets = sh.worksheets()
for worksheet in worksheets:
st.write(worksheet.title)
Note that this depends on having a connection called gsheets set up in .streamlit/secrets.toml, including the spreadsheet url.
@blackary One other question, is it possible to set the size of the newly created workbook (i.e., number of columns and rows) through gsheets_connection?
The only way I know how to do it is by creating a worksheet from a dataframe – then the worksheet will have the same number of rows and columns as the dataframe