DX(デジタルトランスフォーメーション) Excelを自動化できる!Pythonのモジュール「OpenPyXL」で効率化してみた 現在では表計算ソフトのExcelは企業の業務に欠かせない存在となっていますよね。 ですが、実際に活用していくと不便さを感じる場面もあり、これが業務の足かせとなって効率を下げてしまうことも。ところが今このExcelはプログラミング言語「Python」と組み合わさることで、操作を自動化して業務の効率化を行えるようになっています。 ちなみにどうやって自動化を行うのかというと、ExcelとPythonを結び付けるモジュール「OpenPyXL」を活用していくのです。 今回はこのExcel+Pythonで何ができるのかからExcel+Pythonを実現する「OpenPyXL」の基礎や準備について。また、簡単なExcelファイル、「シート」「セル」の操作方法をそれぞれ説明して
マクロをクイックアクセスツールバー(QAT)に登録 マクロをクイックアクセスツールバーに登録する 今回は、普段良く使うマクロをクイックアクセスツールバーに登録する方法を紹介します。その際、表示するマクロアイコンをわかりやすいアイコンに変更し、マクロの名前も簡潔な名前に変更しましょう。 (サンプルファイルは、こちらから マクロ56回サンプルデータ) フォントをメイリオ12など好きなフォントに変更 新規ファイルを開き、VBEを起動して、標準モジュールを追加して、次のコードを入力します。 すでに登録したいマクロがある場合は、それを利用してください。 Sub フォント変更メイリオ() ' フォントを変更メイリオ12 に変更するMacro With Selection.Font .Name = "メイリオ" .Size = 12 End With End Sub マクロを入力したらファイルをマクロ有
VBA (Visual Basic for Applications)でMicrosoft PowerPointを操作する方法を解説します。 オブジェクト PowerPointを操作するために、VBAには次のオブジェクトが用意されている。 PowerPointのオブジェクト オブジェクト 説明
みなさん、こんにちは! タカハシ(@ntakahashi0505)です。 さあ、PowerPoint VBAのシリーズがはじまりました。 VBAというと「Excel」というイメージが強いかも知れませんが、PowerPointでもVBAを使ってマクロを作成することができます。 日々、スライドを作りまくっているビジネスマンもいらっしゃいますでしょ…? 私もそうです(毎月数百ページくらいは作ってます…^^;)。 実は使いどころがいっぱいあるのですが、しかしながらPowerPoint VBAの情報は書籍もネットでも少なめ…。 ということで、このシリーズでは、初心者でもVBAによるマクロの作り方の基礎を学んで、PowerPointを操作するちょっとした便利なツールを作れるようになることを目標に進めていきますよ。 今回はその準備編ということで、PowerPoint VBAを始める際にはじめにやっておく
このリファレンスには、PowerPoint に基づくソリューションを開発するときに役立つ概念情報、プログラミング タスク、サンプル、および参考情報が含まれています。 次のセクションのトピックを表示するには、左側のナビゲーションにある目次をご使用ください。 Concepts: ユーザー定義の PowerPoint ソリューションの開発に関する重要な概念について説明します。 使い方のトピック:ユーザー定義の PowerPoint ソリューションの開発について手順を追って説明します。 オブジェクト モデル リファレンス: PowerPoint オブジェクト モデルのリファレンス資料を提供します。 関連項目 PowerPoint (Office クライアントの開発) サポートとフィードバック Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方および
MSXMLを使ったExcel VBAをWindows 8.1で動かしたときに、MSXML2.DOMDocument型の変数の定義のところで「コンパイルエラー: ユーザー定義型は定義されていません」というエラーが出て動かない場合があります。 このエラーは参照設定に「Microsoft XML. v6.0」を追加しているときに起こります。 どうやら互換用のDOMDocumentクラスなどがWindows 8.1のMSXMLから削除されてしまい、v6.0用のDOMDocument60しか残っていないからのようです。 Windows 7のMicrosoft XML. v6.0 Windows 8.1のMicrosoft XML. v6.0 したがって、DOMDocumentをDOMDocument60に書き直すことで動作するようになります。
とりあえず一つだけ言えることは、やめとけってことです。jsonを扱うなら素直に別の言語を使うか別のデータ形式を使った方が絶対にいいです。本当に死ぬほど面倒です。
UNIXユーザにも優しいVBA利用法¶ 特にUNIX系OSに慣れ親しんできた人々の間で、VBAへの拒絶感が強いと思います。 (自分も 2012年2月まではそうでした。:-) Windows系プロダクト / Microsoft に対する感情は人それぞれとして;-)、下記の理由でVBAのコードを管理したくないなーと思っている人は多いのではないでしょうか。 ソースコードのバージョン管理が難しい (バイナリファイルの内部にある) 共有ライブラリ化が難しい (個々のファイルにモジュールが組み込まれる) エディタが選べない (VBAはVBEで書くことが前提) 本ページでは、 vi でコーディング (Emacs でもいいです) Mercurial でバージョン管理 (Git でもいいです) テスト駆動でコーディング (これはまだ模索中) というテーマで、VBAを扱っていきます。 Note VBAは、UN
VBA (マクロ) 作法/コーディング規約 集約中 ~ メタボなコードにサヨナラしよう VBA(マクロ)に関して、コーディング規約、クラスモジュールやDBアクセス等、実験結果や探すのに苦労した情報を中心に掲載しています。 閲覧した方のお役に立てれば幸いです。 最近、どうも Redim というキーワードで検索が多いようだ。よって、Redimネタをひとつ。 Dim a() As Integer と定義し、 Redim a(10) と再定義したとき、配列はどのように確保されるでしょうか? 1. a(1) ~ a(10) の 10個 2. a(0) ~ a(9) の 10個 3. a(0) ~ a(10) の 11個 さて、どうだろう。 まず、C言語等をされている方は 2. かなと思われるかも知れない。が、配列は「指定した値まで」確保するので 2. は間違い。 1. か 3. か。これはこの条件だ
ちなみに、白状しておきますと、今回の内容はthomさんの以下の記事をたいへん参考にさせていただいております。 クラスをはじめ、VBAについてとても深くてためになる記事を、たくさん提供いただいていますので、この記事以外にもぜひご覧いただければと思います。 クラスPerformanceBoosterの作成とパブリック変数 では、作っていきます。 まずクラスモジュールを挿入して、名称をPerformanceBoosterとします。 持つべきデータを定義しておきたいですが、今回は実行前のCalculationプロパティの値を保存しておくための、initCalculationValue_というプライベート変数だけ用意しておきましょう。 Private initCalculationValue_ As XlCalculation Calculationプロパティの値は、列挙型XlCalculation
VBAでは複数データを格納できるデータ型として、配列とコレクションがある。 それぞれ一長一短あり、どちらが優れているというものではないのだが、どちらかといえばデータの追加・削除が簡単に行えるコレクションのほうが使い勝手は良いかもしれない。 さて、今回は配列とコレクションのデータ構造に焦点を当ててそれぞれの違いを説明する。 配列のデータ構造 例えばInteger型の配列を次のように作成する。 Dim Arr(3) As Integer Arr(0) = 10 Arr(1) = 20 Arr(2) = 30 Arr(3) = 40 すると、メモリ上には単に直列にデータが並ぶ。VBAのIntegerは2バイトなので、ちょうど2バイトずつ隙間なく配置される。 もし次のようにLong型で宣言したら、 Dim Arr(3) As Long Arr(0) = 100 Arr(1) = 200 Arr(2
ExcelのVBAでプログラムを組む際に、大量のデータを処理するのに使うのが配列系の処理である。ただ、プログラムの組み方によっては処理時間に大きく差が出てくるようだ。データ量が少なければよいが、多くなってくると、処理時間が延びてしまい、使い勝手も悪くなる。そこでベストな配列の使い方を考慮してみる。 VBAでは主に配列として使えるのが、静的配列、動的配列、コレクションである。3択になるわけだがどれを選ぶのがよいだろうか? 試しに単純に変数を宣言して、適当なデータ(10,000,000個)を配列に書き込む時間を測定してみた。できるだけ高速で処理時間を短縮できるものを選択したい。 静的配列 Dim Dimtest(10000000) As String Do DoEvents Dimtest(i) = "テスト" & i If i = 10000000 Then Exit Do End If i
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く