Visual Basic for Applications/インストール方法および立ち上げ方

出典: フリー教科書『ウィキブックス(Wikibooks)』

インストール方法[編集]

Microsoft Office Excel(いわゆる「エクセル」)または LibreOffice calc など表計算ソフトを入れれば、すでにVBA実行機能もコンピュータにインストールされている。特に追加のインストールは必要ない。

Apache OpenOffice.org Calc については、2022年の現在では、Javaと連動しておらず、うまく動作しない。Apache OpenOffice のマクロは Java で動作するように設計されており、Javaランタイム環境(Java Runtime Environment)のインストールをうながすメッセージが出るが、しかし Oracle からJavaの最新リリース版をダウンロードしてインストールしても動作しない。

かつて、OpenOffice と Java が同じサンマイクロシステムという会社が開発していた経緯がある。しかし現在、しかし現在、オラクルによってサンは買収され解散している。買収後、Javaはオラクルが引き継いだが、しかしOpenOfficeは紆余曲折あって現在はApache財団が引き継いでいる。

このためか現在、開発元が ApacheとJavaとで異なってしまっているので、Apache OpenOffice と Javaとの連携が取れておらず、うまく動作しない。(仮に動作させる方法があったとしても、管理が難しくなる。)

LibreOffice Calc Basic および Microsoft Excel では、Javaは不要である。なお、LibreOffice でも、JavaScript や Java のマクロでは、Javaが必要とされる。

windowsの場合[編集]

まず、2023年の時点で、新しめのexcelの初期画面は、このようになる。


バージョン確認の方法[編集]


そもそもexcelのバージョンをどうやって確認するかというと、ファイル→アカウント の画面で確認する。(90年代やゼロ年代(2000~2010年)の一般的なアプリのバージョン確認方法とは違っている)

メインメニューの「ファイル」を押すと、下記のように緑色のサイドバーが左に表示されている状態になる。そのサイドバーに「アカウント」があるので、それを押せばバージョン確認できる。


バージョン表示されたさい、マウスでのバージョン番号の右クリック保存などは出来ないので、スクショを取るなどして、目視でメモを取る。

著者が実験したところ、Office2021に同梱のexcelだったので、下記では office 2021 用 excel を前提にして解説を進める。

vbaの初期設定の方法[編集]

ファイル>オプション をする。

ファイルを押した後、緑色のサイドバーの出ている状態で、よく見ると「オプション」があるので、「オプション」を押す。




すると、「excelの基本オプションを設定します」とあるダイアログの表示になる。


「リボンのユーザー設定」>「開発」>「OK」

左サイドバーに「リボンのユーザー設定」がある。それを押すと、画面右側にリボンのユーザー設定の一覧が表示されるので、その一覧にある「開発」のチェックボックスをオンにしたあと、ダイアログ下部にある「OK」をすると決定になる。


メニューに「開発」が加わっている状態

すると、このように、

・メインメニューに「開発」が加わっている。


「開発」を押すと、その下のアイコン一覧にVisual Basic editor の起動アイコンが存在している。これからこのエディターを使う。

なので、「開発」を押す。

開発をクリックして、Visual Basic editor アイコンが表示された状態

「開発」を押すと、このようにVisual Basic editor の起動アイコンが存在している状態になる。



Visual Basicアイコンをクリックする。すると、modiule1 が自動生成される。


このウィンドウに入力していく。これがVBA(マクロ)の入力ウィンドウ

この後の操作は解説者によりマチマチだが、一例として、メニューより「挿入」→「標準モジュール」をクリックすると、下記のようになる。

このウィンドウに、vbaのプログラム文を入力していくことになる。


マクロ編集の立ち上げかた[編集]

windowsの場合[編集]

メニューの「開発」を押し、続いて表示されるvisual basic エディターのアイコンをクリックすれば、マクロの入力画面になる。

「開発」 > Visual Basic editor アイコン 
を押せばいい
(※再掲)このウィンドウに入力していく。これがVBA(マクロ)の入力ウィンドウ



Linuxの場合[編集]

LibreOffice の場合、使いたい表計算ソフト(エクセルまたはCalcなど)を立ち上げる。

そして、メニュー欄の項目を下記のように押していく。

ツール > マクロ > マクロの編集

の順番で操作。

このような記法の読み方を知らない人に説明すると、

まず

  1. 画面上部にあるメニューバーにある「ツール」メニューを押す。
  2. すると、サブメニューの一覧が出るので、その中にある「マクロ」を選ぶ。
  3. すると、さらにサブメニューが出るので、「マクロの編集」を選ぶ。

という意味である。本書以外でも一般に、webサイトなどでソフト操作の説明でよく見られる記法である。

※ 2022年時点のver7.3台での操作を確認。今後、ソフトのバージョンアップによって細かな操作が変わる可能性があるので、適宜、読者は判断すること。

上記メニュー操作に成功すれば、下記のようなウィンドウが新規に立ち上がる。ひとまず、これでVBAの立ち上げは終了である。


LibreOffice Calc Basicの立ち上げ画面のスクリーンショット


表計算ソフトの種類やバージョンによっては、若干、デザインやレイアウトが異なる可能性もある。適宜、読者は判断のこと。


Excel の場合でも同様、「ツール」メニューからたどれる場所に Excel VBA マクロの編集コマンドがある。Excel のバージョンによって細かな操作が違うので、これ以上の説明は省略する。

Linuxにおけるインストール問題[編集]

概要[編集]

Linuxでは、LibreOffice と OpenOfficeはソフトウェア依存性の理由で共存できない。あらかじめユーザーは、どちらを使うかを決めておく必要がある。OpenOfficeを使うには、LibreOfficeを削除しないといけない。

OpenOffice wikiサイトを参考に(外部リンク Linux x86 - Apache OpenOffice Wiki)、LibreOfficeインストール済みのパソコンで無理やりインストールを進めても、

エラーメッセージ

	ファイル /usr/bin/soffice (パッケージ openoffice4.1.12-freedesktop-menus-4.1.12-9809.noarch から) は、パッケージ libreoffice-core-1:7.3.3.2-1.fc36.x86_64 からのファイルと競合しています

が出てインストール中断するだけである。

詳細[編集]

2022年の現状、Fedora linux で LibreOffice を削除するのは、かなり難しい。

なぜなら、少なくとも Fedora の場合、そもそも "libreoffice" パッケージとしては一括で Calc や writer などが管理されていないからである。

このため、削除しようと思って、

sudo dnf remove libreoffice

とコマンドをしても、何も削除されないし、そもそも「削除対象のパッケージはありません。」と表示されるくらいである。

ネットには、昨今のバージョンのfedora で上記コマンドで一括削除できることをうたっているサイトがあるが、間違いである。

そもそも近年のFedoraに「libreoffice」 という名前のアプリはインストールされていない。

逆に、むしろインストールしようとしてみて、

sudo dnf install libreoffice

とコマンドすると、新規ソフトがインストールされてしまうほどである。

このように、Fedora のデスクトップ版(Workstation. 非サーバー版)の場合、libreoffice-writer や libreoffice-calc などは共通管理されておらず、個別のアプリとして別個にインストールされている。

だからか、

sudo dnf remove libreoffice*

とワイルドカードを使って一括削除しようとしても失敗する。「削除対象のパッケージはありません。」と表示されるだけである。


このため、削除するには

sudo dnf remove libreoffice-writer libreoffice-calc libreoffice-impress libreoffice-draw

のようなコマンドで、個別に消す必要がある。上記のリストの他にも、消すべきアプリがあるかもしれない。

ひとつでも libreoffice のアプリを消し忘れていたら、openoffice のインストール失敗につながりかねず、とても面倒である。

上述のように libreoffice の削除がやさしくない以上、openofficeのインストールはやさしくない。けっして不可能ではないが、しかし上記のような実状を無視した削除方法の解説サイトがネットに広がっている現状、削除方法を見つけるのは面倒だろう。

結論を言うと、削除コマンド

sudo dnf remove libreoffice-core

により、libreoffice-core を削除するとlibreoffice-calc など関連するパッケージも消える。

とりあえずこれで、openoffice をインストールできるようになる。どうやら、Fedoraなど一部のディストリビューションでは、libreoffice-coreのプログラムを、libreoffice パッケージの管理にも流用しているようである。

だが、OpenOffceパッケージのインストール自体は出来ても、あまり安定していないのが現状である。