Pythonなどのプログラミング言語を使って仕訳データを作るメリットは、入力する項目の多い給与などの仕訳で威力を発揮します。こちらの会社では約40人分の給与があるのですが、部門計算と支給残高の間違いを確認するために、個別に未払金の補助残高を設けています。(会社の経理のレベルが上がってきたら、合計記帳で十分になると思います。)ですので、入力の量がものすごく多いのです。 PythonでCSVデータを作るのは、非常に簡単です。一見難しそうに見えるかもしれませんが、3つか4つの基本的なパターンを組み合わせているだけですので、一度わかってしまうととてもシンプルなのです。 今回やったのは、こんな感じです。たったこれだけです。ちなみに加工前のデータは弥生給与を使っています。 1) エクセルや他に必要なモジュールをインポートする。 import openpyxl import datetime 2) 仕訳のクラスJournalを定義する。 class Journal: def __init__(self):# コンストラクタ self.type = 2000 self.Date = “” self.DrAcc = “” self.DrSubAcc = “” self.DrCostCenter = “” self.DrCTaxCode = “” self.Amount = 100 self.DrCTaxAmount = 0 self.CrAcc = “” self.CrSubAcc = “” self.CrCostCenter = “” self.CrCTaxCode = “” self.CrCTaxAmount = 0 … Read More “弥生給与の出力データをPythonで仕訳データにする” »
Month: May 2019
世の中で経理に求められている役割には教科書的なものがあると思っています。経理の役目は 支払いや、 給与計算、 売上の集計と請求・入金の管理、 会計ソフトの入力、 などの現業的なものから、 予算の取りまとめ、 実績の集計、 予実の比較とフィードバックなどの 経営の要となる役割もあります。そう、経理は会社の経営にとってとても重要な役割を担っているのです。私は予算を立てて実績と比較することは会社が成長するうえで、必要不可欠なものだと考えています。会社は、成り行き任せにしても大きくならないのです。 そんな会社の成長をサポートするうえで、現業部分で時間を取られて付加価値の高い部分がおろそかになってしまうのはもったいないです。是非、プログラミングを覚えて、リーティンな業務を効率していただけたらと思います。 ここでご紹介するのは、売上のボリュームが多いお客様の資料を入力するうえで、弊事務所が実際に使っているPythonの例です。今回は売上が対象ですが、仕訳がめんどくさい給与の仕訳などにも威力を発揮すると思います。 売上ですが、通常は会社の販売管理のシステムに入っているか、急成長した中小企業ならもしかしてまだエクセルで管理しているかもしれません。こんな風に。 エクセルで毎月の売り上げをまとめて、これを経理が弥生会計などの会計ソフトに手で入力するのが典型的なパターンかと思います。 これをPythonで自動化すると、ボタン一つでCSVで仕訳データが作れます。Pythonなどのプログラミング言語のいいところは、条件分岐などの複雑な条件も対応できることです。エクセルだとIF関数が複数必要な場合など複雑になりがちですがプログラミング言語なら、プログラミング言語がそもそも条件分岐を処理するために出来てるようなものなので、そんなことにはなりません。 CSVを使った弥生ファイルはこんな感じになります。 実際に使ったコードはこんな感じになります。 #1ではエクセルのモジュールをインポートしています。Pythonではエクセルデータも簡単に扱う事が出来ます。 #2ではエクセルに個別の仕訳データを書き込んでいます。 #3でエクセルのファイルを開いています。 #4でエクセルのデータを実際にシートから読み込んでいます。データがなくなるところをifの関数を使って自動で判定しています。 やってみると意外と簡単なので、是非、挑戦してみたら良いと思います。 こちらのサンプルには実際にPythonをインストールするところを書いていませんが、それもそれほど難しくありません。こちらのリンク先からAnacondaをインストールして、AnacondaのメニューからJupyter Notebookを開き、下記のコードをコピペするだけです。ファイルの保存場所やシートの名前は各自皆様の環境に合わせて修正をお願いいたします。 #(1) Pythonでエクセルを読み込むモジュール import openpyxl #(2) エクセルの def renderJournalCSV(journal, sheet, rowNum): sheet[“A” + str(rowNum)] = 2000 sheet[“D” + str(rowNum)] = journal.Date sheet[“E” + str(rowNum)] = journal.DrAcc sheet[“F” + str(rowNum)] = journal.DrSubAcc sheet[“G” … Read More “経理でPythonの使い方(1)” »