pythonでエクセルファイルを読み込んで名簿の冊子のようなものを作ろうとしています。
第一段階として、下記のようにコードに直接エクセルのパスやシート名を記入したプログラムを完成させることができました。
Python
1#問題が起きなかったコード 2import os 3import xlrd 4 5wb = xlrd.open_workbook('2020ページ原稿.xlsm') 6sheet = wb.sheet_by_name('P1(6)')
これを更にブラッシュアップさせて、input()にてファイル名やシート名を指定できる形にしようとして以下改修を行いました。
Python
1#問題が起きたコード 2import os 3import xlrd 4 5wb = input('名簿エクセルのパスを入力してください') 6sheet = input('名簿のシート名を指定してください。 ') 7sheet = wb.sheet_by_name(sheet)
すると、最後の行に対して
[AttributeError: 'str' object has no attribute 'sheet_by_name']
というエラーが発生してしました。
おそらくinput()で定義したsheetがstr形式になっているためだとは思うのですが、これをどの形式にどのように変換するとエラー回避できるのか見当がつきません。
変換方法をご教示いただけると幸いです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。