OpenOffice.org Basicでガントチャート
OpenOffice.org Basicを使ってガントチャート作成用マクロ ガントチャートforOOoを開発する手順を紹介していきます。
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
Typee - データ型を作る
OOoBasicでは変数を指定するために
Dim i As Integer
とします。これはiという名前の変数をInteger(整数型)で使用する事を宣言するものです。同様に、
Dim s As String
Dim oSheet As Object
などとして、それぞれの変数の使用方法を指定(宣言)します。
ここで、この後ろに付けるInteger、String、Objectに相当するものを自分で作って使用する事ができます。

簡単な例を下記に示します。
Type Book
_Name As String
_Price As Integer
_Author As String
_PublishedDate As Date
_Rate As Byte
End Type
これはBook(本)型、本の名前、値段、著者、出版日、点数を記録する事ができます。

使い方は、
Dim myBook As Book
With myBook
._Name = "開発者のためのExcel97VBAプログラミングガイド"
._Price = 3200
._Author = "大村あつし"
._PublishedDate = CDate("1998/8/10")
._Rate = 5
End With

MsgBox myBook._Name
という感じになります。

これを使って、もう少し例を示すと
Sub Main

Dim myBooks(2) As Book

'嘘データを入れてみます
SetBook(myBooks(0), "起動戦士ガンダム",500,"安彦良和",CDate("2004/3/4"),10)
SetBook(myBooks(1), "新世紀エヴァンゲリオン",550,"貞本義行",CDate("2004/5/23"),8)
SetBook(myBooks(2), "MASTERキートン",520,"浦沢直樹",CDate("2004/7/1"),9)

Dim i As Integer
Dim s As String

For i = 0 To UBound(myBooks())
If s <> "" Then s = s & chr(13)
s = s & myBooks(i)._Name
Next i

MsgBox s

End Sub

Sub SetBook(myBook As Book, _Name As String, _Price As Integer, _
_Author As String, _PublishedDate As Date, _Rate As Byte)

With myBook
._Name = _Name
._Price = _Price
._Author = _Author
._PublishedDate = _PublishedDate
._Rate = _Rate
End With

End Sub
という感じになります。小さなマクロを作っているときはこれを使う必要はあまり感じないかもしれませんが、大きなマクロになるととても重宝します。

これを使わなかったらこんな感じになります。
Dim _Name(2) As String
Dim _Price(2) As Integer
Dim _Author(2) As String
Dim _PublishedDate(2) As Date
Dim _Rate(2) As Byte

_Name(0) = "起動戦士ガンダム"
_Price(0) = 500
_Author(0) = "安彦良和"
....
_Name(1) = "..."
....
スポンサーサイト
コメント
この記事へのコメント
コメントを投稿する
URL:
Comment:
Pass:
秘密: 管理者にだけ表示を許可する
 
トラックバック
この記事のトラックバックURL
http://shinob.blog42.fc2.com/tb.php/10-69d27b72
この記事にトラックバックする(FC2ブログユーザー)
この記事へのトラックバック
COPYRIGHT(C) 2004 POWERD BY FC2 ALLRIGHT RESERVED.
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。