【LibreOffice Calc】LibreOffice CalcでVBAのメソッドを覚える【初心者向け】

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 CalcのVBAのメソッドについて今回ご紹介します。

なお今回、Windowsを使用しましたが、Linuxでも使用できることを確認しました。

LibreOfficeを使われる方はLinuxユーザーが多いと思いますので、ぜひともLibreOfficeでVBAを使用していただきたいと思っています。

LibreOffice CalcでVBAのメソッドの使い方

VBAのメソッド

VBAで操作対象になるものをオブジェクトと呼びます

オブジェクトの持つものとして、プロパティとメソッドがあります。

今回はメソッドについてご説明します。

メソッドとは、動作のことです。

クリア、データの抽出、コピーなどがメソッドの代表的なものです。

①Clear

Clearは、値や書式などをクリアするメソッドです。

記述例は以下の通りです。

Range(“A1”).Clear

これはセルのA1をクリアするという意味です。

Clearの種類は以下の通りです。

Clear…書式や値、数式、コメントをクリアする

ClearContents…値や数式のみクリアする

ClearFormats…書式のみクリアする

ClearComments…コメントのみクリアする

よく使用するのはClearContentsです。

実際にClearメソッドで以下の表のC1をクリアしてみましょう。

LibreOffice CalcでVBAのメソッドの使い方

コードは以下の通りです。

LibreOffice CalcでVBAのメソッドの使い方
Option VBASupport 1
REM  *****  BASIC  *****

Sub sakujo

	Range("C1").Clear
	
End Sub

F5キーを押して実行してみましょう。

LibreOffice CalcでVBAのメソッドの使い方

このように、書式や値、数式、コメントの全てがクリアされました。

しかし、これだと表が不格好になってしまいます。文字…値だけがクリアされるのが好ましいでしょう。そこで値や数式のみをクリアするClearContentsを使ってみましょう。

コードは以下の通りです。

LibreOffice CalcでVBAのメソッドの使い方
Option VBASupport 1
REM  *****  BASIC  *****

Sub sakujo

	Range("C1").ClearContents
	
End Sub

F5キーを押して実行してみましょう。

LibreOffice CalcでVBAのメソッドの使い方

このように文字…値だけクリアされました。

では、以下の表の商品名が入っているC2~C24をクリアしてみます。

LibreOffice CalcでVBAのメソッドの使い方

コードは以下の通りです。

LibreOffice CalcでVBAのメソッドの使い方
Option VBASupport 1
REM  *****  BASIC  *****

Sub sakujo

	Range("C1:C23").ClearContents
	
End Sub

F5キーを押して実行してみましょう。

LibreOffice CalcでVBAのメソッドの使い方

C2~C24の商品名がクリアされました。

②Copyメソッド

引数が必要なメソッドがありますが、その代表格がCopyメソッドです

セルなどをどの場所にコピーするか、という時に使用するメソッドです

記述方法は以下の通りです

セル.Copy Destination:= コピー先

※Destination:は半角スペースに置き換えることが出来ます。

Destination = コピー先が引数になります。

実際にCopyメソッドを使って、B5のセルをC5にコピーしてみましょう。

LibreOffice CalcでVBAのメソッドの使い方

コードは以下の通りです。

LibreOffice CalcでVBAのメソッドの使い方
Option VBASupport 1
REM  *****  BASIC  *****

Sub sakujo

	Range("B5").Copy Destination:=Range("C5")
	
End Sub

F5キーを押して実行してみましょう。

LibreOffice CalcでVBAのメソッドの使い方

このようにB5のセルがC5にコピーされました

なおDestination:は半角スペースに置き換えることが出来るので、以下のコードでも同じです。

LibreOffice CalcでVBAのメソッドの使い方
Option VBASupport 1
REM  *****  BASIC  *****

Sub sakujo

	Range("B5").Copy Range("C5")
	
End Sub

F5キーを押して実行してみましょう。

LibreOffice CalcでVBAのメソッドの使い方

同じ結果が出ます。

③データの抽出するAutoFilterメソッド

データを抽出するメソッドがAutoFilterメソッドです。

これは複数の引数を使用します。

記述方法は以下の通りです

セル.AutoFilter フィールド, 基準

以下の表で、PowerPoint活用術でフィルターをかける場合を説明します。

LibreOffice CalcでVBAのメソッドの使い方

以下のようなコードを入力します。

Range(“A1”).AutoFilter 3, “Impress(プレゼンテーション)入門”

なおセルは、表全体のセルならどこでも構いません。

VBAのAutoFilterメソッドの使用例

実際に以下の表で、Calc(表計算)入門でデータ抽出をしてみましょう。

LibreOffice CalcでVBAのメソッドの使い方

コードは以下の通りです。

LibreOffice CalcでVBAのメソッドの使い方
Option VBASupport 1
REM  *****  BASIC  *****

Sub autofilter

	Range("C1").AutoFilter 3, "Calc(表計算)入門"
	
End Sub

F5キーを押して実行してみましょう。

LibreOffice CalcでVBAのメソッドの使い方

このようにCalc(表計算)入門でデータが抽出されます。

タイトルとURLをコピーしました