質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

1回答

350閲覧

pythonでexcelの用語ベースを 検索するツールを作りたい

xmaniT

総合スコア1

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

0クリップ

投稿2023/02/27 01:26

実現したいこと

  • 複数のExcelファイルを1つのフォルダに入れて用語ベースとする
  • ダイアログを作成し、検索バーに用語を入力してボタンを押すと、用語ベースから検索し、

ダイアログ上にあるフィールドに用語の意味、または「該当なし」と表示される

前提

  • ベースとなる検索ダイアログは作成済み
  • ボタンを押すと、複数のExcelファイルで構成される用語ベースから検索を実行するコードが難しいです

 

該当のソースコード

from tkinter import * ws = Tk() Frm = Frame(ws) Label(Frm,text='検索語:').pack(side=LEFT) modify = Entry(Frm) modify.pack(side=LEFT, fill=BOTH, expand=1) modify.focus_set() buttn = Button(Frm, text='検索') buttn.pack(side=RIGHT) Frm.pack(side=TOP) txt = Text(ws) txt.insert('1.0','''Enter here...''') txt.pack(side=BOTTOM) def find(): txt.tag_remove('found', '1.0', END) ser = modify.get() if ser: idx = '1.0' while 1: idx = txt.search(ser, idx, nocase=1, stopindex=END) if not idx: break lastidx = '%s+%dc' % (idx, len(ser)) txt.tag_add('found', idx, lastidx) idx = lastidx txt.tag_config('found', foreground='blue') modify.focus_set() buttn.config(command=find) ws.mainloop()

試したこと

ボタンを押すと、検索を実行するコードのところで止まっています。Excelファイル上での検索ではなく、ダイアログに表示させたいのでコードが分からず困っています。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

meg_

2023/02/27 12:50

> 複数のExcelファイルで構成される用語ベースから検索を実行するコードが難しいです > Excelファイル上での検索ではなく、ダイアログに表示させたいのでコードが分からず困っています。 上記により分からないのはExcelファイルの操作ではなくTKinterの操作ということで良いでしょうか?
guest

回答1

0

pythonを使ってExcelのブックを扱いたいのであれば、以下のどちらかの方法を使うことになるでしょう。

  • openpyxlを使う
    pythonでブックを開いて内容にアクセスできます。 処理は全部自分で書く必要がありますが、pythonっぽく書けます。
  • pandasを使う
    pandasのDataFrameに慣れているのであれば、こちらのほうが楽にできるでしょうが、そうでなければ、openpyxlの方がとっつきやすいでしょうね。

投稿2023/02/27 11:34

TakaiY

総合スコア12747

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

xmaniT

2023/02/28 02:42

コメントありがとうございます。これからの作業方針がなんとなくイメージできてきました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問