PythonでExcel自動化を行いたい人がまず見るべき講座|PythonによるExcel自動操作入門 連結版

  Рет қаралды 553,980

いまにゅのプログラミング塾

3 жыл бұрын

■ ビジネス戦闘力が圧倒的に向上するプログラミングスクール 『code4biz』🧑‍💻
↓説明会はこちら↓
code4biz.jp/
※ 締切日:3月23日(水)23:59
※ 第2期開催は当分ありません
👨‍💻⬇︎無料LINE登録で近日限定コンテツ公開⬇︎👨‍💻
✅プログラミング学習効率を飛躍的に高める3つの考え方
✅必ず知っておくべきエラー解決法9選
✅プログラミングによる業務効率化の重要な考え方と成功事例3選! etc...
line.me/R/ti/p/@114eqgxg
■ 講義使用ファイル
drive.google.com/drive/folders/1RvjBY3yXoOpjs2kYRCJENAtKcTuG4bD1?usp=sharing
本動画は、PythonでExcel操作を自動化するシリーズで公開した全3回の動画を連結した内容となります。Pythonを用いると様々な業務効率化を実現できますが、その中でもExcel業務の自動化ニーズはかなり多いと考えています。その自動化を実現するため、本動画では、Excelファイルの自動集約から集計表の作成、Excelでよく使われるピボットテーブルやVLOOKUP関数の実装、書式設定までを一気通貫でお伝えしていきます。
00:00 イントロ
01:03 Excelファイル(請求書)の集約
33:36 集計表の作成とExcelでよく使われる機能
01:25:52 書式設定とPDFからの出力
■ Twitter
03Imanyu
■ Udemy
www.udemy.com/user/jin-xi-hang-ping-2/
#PythonでExcel操作 #Excel自動化 #Python自動化

Пікірлер: 75
@imanyu_programming
@imanyu_programming 2 жыл бұрын
オンライン講義を開講します!! リアルタイム講義はめったに実施しないので、是非この機会にご参加ください!😁 日程:2021年9月10日 (金) 19:30 - 21:30 sagasuru.jp/course-details/cho-honkaku-teki-python-niyoru-gyomu-jido-ka-jissen-gazo-ninshiki-to-burauza-sosa-no-jido-ka
@u-ta8872
@u-ta8872 2 жыл бұрын
エラー解決方法などもそのまま載せる事はいいですね👍 上級者の方でもエラー出た時などは調べて対策してるってのが初心者にも伝わりますね! 初心者からしたら上級者の方は何でもパパッと解決してる!とかミスをしない!とかって思い込んでしまうことがありますからね💦
@user-nz9rp6rw5i
@user-nz9rp6rw5i Жыл бұрын
とてもわかりやすくて、参考になりました ありがとうございました 引き続き、いろいろな、投稿を参考にさせていただきます
@yigata4806
@yigata4806 2 жыл бұрын
Python初学者ですが、大変勉強になります。ありがとうございます。
@takkad1590
@takkad1590 2 жыл бұрын
端末入力だけで財務諸表作成までを一元的に自動化したかったところです。
@user-ll2ri8ef1t
@user-ll2ri8ef1t 2 жыл бұрын
なんとかglobでデータ読み込みできました。for文の解説込みで話してくれているので初心者にはとても頼もしいです。やはり、個々での働きはわかりますが、今回のようにfor文の中にfor文があったりすると初心者は意味不明なのです。個々の関数の働きなど説明されながらの動画でとても理解が深まったと感じました。これからも初心者向けの動画、または、実務で生かせる内容で、確実に理解が深まるような内容の動画期待しております。こういった内容の動画をいくつもこなすことで、実力が付くような気がしますので今後ともよろしくお願いいたします。
@user-tq9zd8zi9o
@user-tq9zd8zi9o 3 жыл бұрын
とても参考になりました。ありがとうございます!
@imanyu_programming
@imanyu_programming 3 жыл бұрын
こちらこそご視聴ありがとうございます!!!
@user-wf7wn8bg7g
@user-wf7wn8bg7g 2 жыл бұрын
参考になる情報ですので、フォローさせていただきました。pythonって使い勝手がいいんでうよねー簡単だし。
@imanyu_programming
@imanyu_programming 2 жыл бұрын
ありがとうございます😊!
@akaiaoi52
@akaiaoi52 3 жыл бұрын
大学のデータ解析でもむっちゃ役立ちました!!! ありがとうございます!
@imanyu_programming
@imanyu_programming 3 жыл бұрын
お役に立てたようで良かったです!!!
@user-ht1zp7bg8x
@user-ht1zp7bg8x Жыл бұрын
いまにゅさん、 いつも、python学習の一つとして拝見されていただいております。 とてもわかりやすくて、同じ目線で実装してるので学びやすいです! 色々pythonの質問できるコミュニティサイトとかありますか? お忙しい中恐縮ですが、よろしくお願いいたします。
@tt-xs5wl
@tt-xs5wl 2 жыл бұрын
いつもありがとうございます。 【質問です】 MacBookProかAirの購入を考えております。 プログラミングをする場合、現状M1搭載のMacはアプリ等の互換性の関係で適していない部分がある可能性ある事から、Intelが入っているMacを購入すべきという記事を拝見しました。 実際どう思われますか? また、プログラミングをする場合、現時点ではどのMacを買うのが適切だと思いますか? よろしくお願いいたします。
@waterbe644
@waterbe644 3 жыл бұрын
これは、実用的ですね。vbaの処理と比べ安くてすごく参考になります。
@imanyu_programming
@imanyu_programming 3 жыл бұрын
コメントありがとうございます!! そのようにおっしゃっていただき嬉しいです!!
@KIYO-Youtube
@KIYO-Youtube 3 жыл бұрын
この動画好きすぎるのでいいね押しておきました!
@imanyu_programming
@imanyu_programming 3 жыл бұрын
いつもありがとうございます!!!!!!
@kaji877
@kaji877 3 жыл бұрын
動画ありがとうございます。とても勉強になります。非常に助かっています。 エクセルで行っていことをpythonで実装しようと勉強中です。 エクセルでやっていた機能の置き換えなどの動画の作成予定などありますでしょうか?例えば 列1の値を列2、列3、列4...にそれぞれかけて値を出す(エクセルで言うsumproduct)など データフレーム全体に関数を適用や、列の平均などは出せるのですが、セルの値を使って計算していく や列同士の掛け算などが分からなくて、困っております。あとエクセルでは複素数がiなのに対し、pythonではjのため、エクセルの複素数データを読み込んでも、複素数として認識できません。jに置換しても上手くいきません。
@imanyu_programming
@imanyu_programming 3 жыл бұрын
コメントありがとうございます!! 現状そのような動画の作成予定はありませんが、検討させていただきます!
@ishida8429
@ishida8429 2 жыл бұрын
It would be nice that I could understand this :,)
@galois2208
@galois2208 2 жыл бұрын
途中まで上手くいってたのに、関数に「df['請求書No'] =…」を入力するのを忘れていたことに気づいて、入力し直してから再度実行したら「Excel file format cannot be determined, you must specify an engine manually.」が表示されて、xlrdのバージョンを1.2.0に下げてもダメで詰みました…orz
@user-dh9mc3vc5m
@user-dh9mc3vc5m Жыл бұрын
いつも勉強させていただきありがとうございます。 一点質問なんですが、16:00 にて、下記のようにカラムを代入されていたんですが .columnsの記述の理由がわらかないです。初心者質問で恐縮ですが、教えてもらえると幸いです。 df.columns = columns
@SH-ru8ve
@SH-ru8ve Жыл бұрын
質問です。 本当に初歩なのですが、「■ 講義使用ファイル」をダウンロードし、 パスを取得すべく、 import pandas as pd from glob import glob filepaths = glob('source/*.xlsx') filepaths を入力したのですが、 パスを取得することができず、結果が [] となってしまいます。 この原因と対策をおしえていただけますと助かります。
@blackmagician-ng6fb
@blackmagician-ng6fb 3 жыл бұрын
いつも、参考にさせていただき、たいへん助かっています。 今西先生にお願いがあります。一つのファイルに複数のシートがあり、それぞれのシートの読み込むセルの位置(セル番号)が異なります。このファイルが複数有り、これを別のファイルの1枚のシートにコピペし纏める動画を作成いただけると助かります。 (例えば、Sheet1~5のデータを横1行にコピペして、繰り返し処理を行うイメージです) ご検討いただけると幸いです。よろしくお願いします。
@imanyu_programming
@imanyu_programming 3 жыл бұрын
検討します!
@YN-qi3ly
@YN-qi3ly 2 жыл бұрын
初歩的な質問ですみません。 いまにゅさんが用意してくださったエクセルファイルをjupyter lab で開いているファイルに入れて、glob関数を使ってエクセルファイルを読み取ったのですが、空のリストが返されます。 どうしたらいいでしょうか?
@takyoshi44
@takyoshi44 2 жыл бұрын
はじめまして。ユースフルの動画を見させて頂き、初心者でここにたどり着きました。初っ端4:59を教えてください。python_excel_01フォルダをC直下に置きまして、filepaths読込を実行すると結果が[] 空欄で帰ってきてしまいます。エラーではないので式の誤字ではないと思うのですが、どこに原因があると考えられますでしょうか?
@takyoshi44
@takyoshi44 2 жыл бұрын
やっと自己解決致しました。 まだ進めてはいないのですが、google コラボラトリーはローカルを読めないということにやっと今気づきました。。。 精進します。
@user-sw9zd1uy9i
@user-sw9zd1uy9i Жыл бұрын
14:27  でなぜdropna(axis =1)を使って欠損値を削除していないのでしょうか??
@user-le2ts5dz1s
@user-le2ts5dz1s 3 жыл бұрын
いつも有意義な動画本当にありがとうございます。Excel、Wordの自動化について質問があるのですが、よろしければお答えいただけると幸いです。私はオンラインショップをやっているのですが宛先をシールに印刷することで書く手間を省き、自動化をしようと考えています。郵便番号、住所、名前などが記入されたエクセルシートをWordに移動させ、差し込み印刷ウィザードを利用しシールに印刷するところまでを自動化することは可能でしょうか。可能でしたら使用するツールを教えていただいてもよろしいでしょうか。何卒よろしくお願いいたします。
@user-xr6gw1zy3g
@user-xr6gw1zy3g 2 жыл бұрын
たぶんRPAあたりのソフトを検討されたらいいと思います。ただ私自身、差し込み印刷はあまり経験ないので適確な情報ではないかもしれません。何かの参考に成ったら幸いです。
@slaimu071201
@slaimu071201 2 жыл бұрын
◎excelの自動化 ●Excelファイルの集約  *pandasを利用 1.Excelファイルを準備 →同じフォーマット/最大行数12行 2.pandasとglobをインポート 3.glob関数利用、 →Excelファイルのパスを習得 →glob('source/*.xlsx')  filepathの変数に代入 *_を変数につけるのは一時的に格納する 変数の為 5.データの抽出→請求情報(メインデータ)        →(メタデータ)        6.
@slaimu071201
@slaimu071201 2 жыл бұрын
◎excelでよく使う機能 ●カラムの順序変更 ●集計表の作成 ・売り上げ総額と打ち上げを順にまとめる 1.担当者リストの作成  発行者= 担当者  ユニーク関数を使用して重複なく担当者を  リスト化   2.まず一人集計表作成  1.条件抽出で岸辺さんのデータのみ抽出  2.金額カラムの合計  _df[] .sum() 3.企業名抽出→ユニーク関数  4.企業ごとの総額 3.データフレームの構成確認  1.合計 tot_earnings pd.DataFrame({'担当者':member}) *インデックス番号入れないとエラー  2.内訳 earnings dictクラス 必要なものはクラスとキー →: でなく= →シングルクォーテーション省略可能
@user-dw8ti5hh9g
@user-dw8ti5hh9g 2 жыл бұрын
deepcopyを行う前のグラフ作成時に縦軸と横軸のグラフ両方作成されるのですがこれはなぜでしょうか
@user-zr4sg5mb7c
@user-zr4sg5mb7c 2 жыл бұрын
日頃 vba で組んでいますが、python は、EUC には向かない感じがします。作り上げるまでの時間が結構かかりそうですね。
@ysakaguchi1674
@ysakaguchi1674 2 жыл бұрын
分かりやすい動画でいつも参考にさせていただいています。 1点質問させてください。 38:20あたりで躓いています。 df = df.reset_index(drop=True) と入力すると以下のエラーが表示されました。 AttributeError Traceback (most recent call last) in ----> 1 df = df.reset_index(drop=True) AttributeError: 'function' object has no attribute 'reset_index' これは何が原因なのでしょうか?
@user-xr6gw1zy3g
@user-xr6gw1zy3g 2 жыл бұрын
dfを実行して結果を見たらどうかな?dfに表に成ってなければ、この行以前の場所にdfにpandasの表が入っていないからだと思われます。dfがpandasの表のデータじゃないから、reset_index()が実行できないんだと思われます。 まずexcelではなくpandasの使い方を覚えれば今回のエラーの意味が解るかもしれません。ちょっといきなりexcelは敷居が高いと思います。 僕も想像で言ってて、また上手く行かなかったら教えてください。僕自身もpythonはよく解ってないので勉強中の身でごめんなさい。一緒に勉強出来たら幸いです。
@user-bm2cw4dj2m
@user-bm2cw4dj2m 2 жыл бұрын
ポインティー痩せたな!?って思ったら全然違かった
@user-tr5lk9uh8v
@user-tr5lk9uh8v 3 жыл бұрын
pdf_gen(file_pdf,sh)でpdfを出力したら、同じデータが15行繰り返されてしまいます。どの様にすればよろしいでしょうか。
@imanyu_programming
@imanyu_programming 3 жыл бұрын
いただいた情報だけでは原因分かりませんね、、、
@user-tr5lk9uh8v
@user-tr5lk9uh8v 3 жыл бұрын
関数内の11行目のdata.append(unit_aa) の開始位置が誤っていることに気が付きました。大変失礼いたしました。
@user-ot7uf1pm6r
@user-ot7uf1pm6r 2 жыл бұрын
質問している方いますが、filepathes=glob('source/*.xlsx')でシフトエンターしても[]が表示されてしまいます。googleコラボレートリーなので、実行ファイルと同じところにsourceフォルダを作ってファイルを入れました。
@rrr-dk8xf
@rrr-dk8xf 2 жыл бұрын
自分は.xlsxではなく.csvにしたらいけました!
@goehana1217
@goehana1217 10 ай бұрын
自分はjupyter notebookで実行したら表示されました。 理由をchatGPTに聞いてみたら、下記の答えが返ってきました(私はちゃんと理解できていませんが…参考までに貼っておきます) ーーーーーーーーーー glob モジュールは、ファイルパターンにマッチするファイル名を見つけるための便利な方法を提供します。glob.glob() 関数を使用してファイル名を取得しようとする場合、通常の状況ではどちらのJupyter環境でも同じ結果が得られるはずです。しかし、一部の状況では異なる結果が得られることがあります。 以下に考えられるいくつかの理由を挙げてみましょう。 キャッシュの違い: Jupyter LabとJupyter Notebookは内部的に異なるキャッシュや動作を持っていることがあります。一方の環境ではキャッシュが更新されていない可能性があるため、ファイルの変更が反映されていないことがあります。 Kernelのリスタート: Jupyter環境でカーネルがクラッシュしたり再起動したりすると、一部の変更が反映されないことがあります。この場合、一度カーネルを再起動してみてください。 カレントディレクトリの違い: Jupyter LabとJupyter Notebookが実行されているディレクトリが異なる場合、glob を使用する際のカレントディレクトリが異なる可能性があります。これにより、異なるファイルやディレクトリがマッチすることがあります。 バグや設定の違い: Jupyter LabやJupyter Notebookはそれぞれ別々のアプリケーションとして開発されており、一部のバグや設定の違いが影響を与えることがあります。バージョンの違いや設定の違いによっても影響が出る可能性があります。 これらの理由の中から、問題の原因を特定するのが難しい場合は、以下のステップを試してみてください。 カーネルを再起動してみてください。一部の状況では、問題が解決することがあります。 ファイルの変更を確認するために、Jupyter LabとJupyter Notebookの両方で同じディレクトリを使用していることを確認してください。 バージョンや設定の違いについて調査し、可能な限り同じ設定を使用するようにしてみてください。 もし問題が解決しない場合は、具体的なコード例や状況を提供いただければ、より詳細なアドバイスをすることができるかと思います。
@user-hy5qq3fo1i
@user-hy5qq3fo1i 2 жыл бұрын
そういえば最近全然エクセル使ってないな
@user-tc4np2us9c
@user-tc4np2us9c 3 жыл бұрын
glob関数でファイルを読み込めないんですが何が原因でしょう?
@imanyu_programming
@imanyu_programming 3 жыл бұрын
エラー内容等を見てみないとわからないですね、、、
@sy-yj3fo
@sy-yj3fo 8 ай бұрын
わかりやすい動画なので、これで勉強させて頂いています。 1つ教えてもらいたいのですが動画の中の total_res =[] for member in members: _df = df[df['発行者コード'] == member] companies = _df['企業名'].unique()  ・・・・・・・ この部分で下記のようなエラーでどうしても解決できず困っています。 考えられる原因は何でしょうか。よろしくお願いします。 _df = df[df['発行者コード'] == member] ~~^^^^^^^^^^ KeyError: '発行者コード'
@sy-yj3fo
@sy-yj3fo 8 ай бұрын
動画では、’発行者‘のところを’発行者コード’としていますが、名前が入っています。
@user-ul6ki9mg3d
@user-ul6ki9mg3d 2 жыл бұрын
1:14:30
@WHITE2THE2REAPER
@WHITE2THE2REAPER Жыл бұрын
8分の時点で挫折しました。xlrdのヴァージョンを下げてもxlsxが読み込めません。engineをopenpyxlにしてもダメでした。
@WHITE2THE2REAPER
@WHITE2THE2REAPER Жыл бұрын
xlsに拡張子を変更したら読み込めました。
@donave909
@donave909 2 жыл бұрын
まず,Windowsにpythonを入れるハードルが高い。
@user-ll2ri8ef1t
@user-ll2ri8ef1t 2 жыл бұрын
glob関数で同じ記述内容で処理しようとしても[]と表示されます。なぜでしょうか?
@user-xr6gw1zy3g
@user-xr6gw1zy3g 2 жыл бұрын
こんにちは、多分1:58のsourceと言うフォルダにEXCELファイルが入ってないからだと思います。講義用使用ファイルあたりから、EXCELファイルを読み込んでないのが原因に想われます。 それでも出来なかったら一緒に悩めたらと想います。ご迷惑だったらすみません。
@user-lx2ur5yk1d
@user-lx2ur5yk1d 3 жыл бұрын
officeオンラインでできますか??
@imanyu_programming
@imanyu_programming 3 жыл бұрын
やったことがないのでわかりませんが、できない気がします!
@user-lx2ur5yk1d
@user-lx2ur5yk1d 3 жыл бұрын
@@imanyu_programming ですよね… ありがとうございます!
@user-hb2kg4el6g
@user-hb2kg4el6g 2 жыл бұрын
声がジャパネット感が
@user-uo6do2ph5f
@user-uo6do2ph5f 3 жыл бұрын
素直にVBAでよくね・・・? エクセル作業をやるってことは、会社のケースが多い。 会社にpythonなんて入ってる企業なんてほぼ皆無だし
@imanyu_programming
@imanyu_programming 3 жыл бұрын
講座出しておいて言うのもあれですが、VBAで良いと思います!! Pythonは他にも応用が利く言語であることが最大の強みかなと!!!
@user-wf7wn8bg7g
@user-wf7wn8bg7g 2 жыл бұрын
VBA。。32bit前提でしか、DB接続し難いので嫌い。。Jenkinsともクソのように愛想が悪い(一々、エクセルを開きに行こうとするので、Jenkins内でエラーで落ちる。プラグインで回避とかくそめんどい)。。と、コードがクソのように読みにくい。。 でも使っちゃうw簡単に使えるし。 pythonの方が楽なんだけどね。。まぁ、これからでしょうな~一般企業でpython3系を入れていい様になるのは。
@bitaminsumatch
@bitaminsumatch 3 жыл бұрын
初心者な質問です。動画→27:40辺りに関して ご教示お願い致します。 df = pd.DataFrame() for filepath in filepaths: _df = extract(filepath) print(filepath) df = pd.concat([df,_df]) 上記を入力すると、下記エラーがでます。なぜでしょうか? /content/drive/My Drive/エクセル操作用/請求書_12月_株式会社ABC.xlsx /content/drive/My Drive/エクセル操作用/請求書_11月_XYZ株式会社.xlsx /content/drive/My Drive/エクセル操作用/請求書_10月_TTTInc.xlsx --------------------------------------------------------------------------- IndexError Traceback (most recent call last) in () 2 3 for filepath in filepaths: ----> 4 _df = extract(filepath) 5 print(filepath) 6 df = pd.concat([df,_df]) 4 frames /usr/local/lib/python3.7/dist-packages/pandas/core/indexing.py in _validate_key(self, key, axis) 1365 # check that the key does not exceed the maximum size of the index 1366 if len(arr) and (arr.max() >= len_axis or arr.min() < -len_axis): -> 1367 raise IndexError("positional indexers are out-of-bounds") 1368 else: 1369 raise ValueError(f"Can only index by location with a [{self._valid_types}]") IndexError: positional indexers are out-of-bounds
@user-xr6gw1zy3g
@user-xr6gw1zy3g 2 жыл бұрын
21:48あたりのdef extract(filepath): 以降が上手く定義出来て無いのではないかと思います。
@user-kz1vg8tj8x
@user-kz1vg8tj8x Жыл бұрын
glob2.globで ファイルが loadされません エラーに も ならず 書くかっこが 表示されるだけ で 対処の 方法を 教えて下さい データは 左の ディレクトリに あります お願いします
The joker's house has been invaded by a pseudo-human#joker #shorts
00:39
Untitled Joker
Рет қаралды 15 МЛН
Получилось у Вики?😂 #хабибка
00:14
ХАБИБ
Рет қаралды 6 МЛН
Жайдарман | Туған күн 2024 | Алматы
2:22:55
Jaidarman OFFICIAL / JCI
Рет қаралды 1,4 МЛН
The joker's house has been invaded by a pseudo-human#joker #shorts
00:39
Untitled Joker
Рет қаралды 15 МЛН