LibreOffice CalcでVBAを使って、演算と変数を覚えて、業務を効率化する
LibreOffice Calcとは?
LibreOfficeは、The Document Foundationが支援する自由・オープンソースのオフィスソフトです。
ワープロ、表計算、プレゼンテーション、データベース、数式エディタの5つのアプリケーションで構成されています。
Microsoft Officeと互換性があります。
LibreOfficeの表計算ソフト…Excelに該当するのが、LibreOffice Calcです。
LibreOffice CalcはVBAで自動化でき、業務を効率化できる
ExcelというとVBAでプログラムをして自動化して業務を効率化することが出来ます。
では、LibreOffice Calcでプログラムをして自動化して業務を効率化する、どのように行えばいいのか?、分からないという方は多いのではないでしょうか?
LibreOffice Calcでプログラムをして自動化して業務を効率化する…その情報が非常に日本語で説明されているものが少なく、また見つけたとしても、これを覚えるのが大変だったりします。
しかし、それを解決する方法があります。
LibreOfficeでVBAを使うのです。
実はLibreOffice Calcは、VBAを使用することが出来ます。
VBAならたくさんの情報があります。
LibreOffice特有のプログラミングをして自動化して業務を効率化する方法を探さなくても、VBAの情報で自動化して業務を効率化することが出来ます。
今回のブログ記事では、そのLibreOffice CalcでVBAを使って、演算と変数を覚えて、業務を効率化する方法をご紹介します。
なお今回、Windowsを使用しましたが、Linuxでも使用できることを確認しました。
LibreOfficeを使われる方はLinuxユーザーが多いと思いますので、ぜひともLibreOfficeでVBAを使用していただきたいと思っています。
LibreOffice CalcでVBAを使って、演算と変数を覚えて、業務を効率化する方法
1.LibreOffice CalcでVBAを使って計算する
LibreOffice Calcでは、VBAが使用できます。
LibreOffice CalcでVBAを使って計算を行うことが出来ます。
その際に覚えておかないといけないのが、演算子です。
この演算子の正式の演算子は、算術演算子を言いますが、以下のものがあります。
- + 足し算
- – 引き算
- / 割り算(小数点で求める場合)
- ¥ 割り算(整数で求める場合)
- * 掛け算
- ^ べき乗
- Mod 割り算の余りを求める& 文字列を結合する
実際にLibreOffice CalcでVBAを使ってで演算子を使って計算をしてみましょう。
以下の表を使用することにします。
この表の金額欄のF2に、単価✕数量の値を代入させます
VBAのコードは以下の通りです。
Option VBASupport 1
REM ***** BASIC *****
Sub Calculation
Range("F2").Value = Range("D2").Value * Range("E2").Value
End Sub
プロシージャ名はここでは分かりやすく、Calculationにしました。
Range(“F2”).Valueを例に、RangeオブジェクトとValueプロパティの説明を簡単にします。
Rangeオブジェクトは、セルを指定するものです。
Valueプロパティは値です。
なので、Range(“F2”).Valueの意味はF2の値にということになります。
Range(“F2”).Valueイコール、単価✕数量の値とする場合は、Range(“F2”).Valueの後に=を入力し、単価のセルの値を意味するRange(“D2”).Valueと入力し、掛け算の演算子である*を入力し、数量のセルの値を意味するRange(“E2”).Valueと入力します。
これをF5キーを押して実行させると、以下のようにF2に単価✕数量の値が代入されます。
2.LibreOffice CalcでVBAの変数を使う
LibreOffice Calcでは、VBAの変数を使用することが出来ます。
変数とは簡単に言うと、数値や文字列を一時的に記憶する箱のことです。
変数を使うメリットは、値を一時記憶しておけること、それを何回も使いまわせること、そして、コードの修正が楽になることです。
LibreOffice Calcで、 VBAの変数を使う順序を説明します。
- ①変数を宣言する
- ②数値や文字列を変数という箱に入れる(これを代入と言います)
- ③その変数を、セルに代入する
具体的に、金額欄のF2に、単価✕数量の値を変数を使って代入させる方法を説明します。
VBAのコードですが、以下の通りになります。
Option VBASupport 1
REM ***** BASIC *****
Sub Calculation
Dim Calculation01 As Long
Calculation01 = Range("D2").Value * Range("E2").Value
Range("F2").Value = Calculation01
End Sub
このコードの説明をします。
最初に変数の宣言をします。
最初にDimと入力し、半角スペースを開け、変数名を入力します(今回は変数名をCalculation01にしました)。そして半角スペースを開け、Asと入力します。そして半角スペースを開け、この変数は整数を入れる箱を意味する型であるLongを入力します。
※変数には必ず型を入力します。型の種類は以下の通りです。
- Long 整数
- Double 少数
- Date 日付
- String 文字列Variant 型がわからないので未定
実際によく使うのがLongとStringです。
改行し、計算という変数に単価✕数量の値を代入させます。最初に計算と入力し、=を入力し、単価✕数量を意味するRange(“D2”).Value * Range(“E2”).Valueを入力します。
そして改行し、F2に計算という変数を代入させます。F2の値を意味するRange(“F2”).Valueを入力し、=を入力し、変数名の計算を入力します。
※コードを見ると=の間に半角スペースが空いてますが、これは、わざわざ入力しなくても、コードを入力すると自動的に入ります。
これをF5キーを押して実行させます。
するとF2に、単価✕数量の値が代入されます。