スポンサーリンク

2008-09-27

Tips175 - [ExcelでDAOとSQL] 先頭のレコードを指定しMDBファイルのデータを編集

エクセルのVBAで先頭のレコードを指定しMDBデータベースファイルのデータを編集します。
実行順
1)OpenDatabaseを使いデータベースファイルを開く
2)OpenRecordsetを使いテーブルを開く
3)MoveFirstで先頭のレコードを指定
4)Editを使いデータ編集
5)フィールドに編集するデータをセット
6)Updateを使い編集の実行
7)Closeを使いデータベースを閉じる
8)Set = Nothingで使われていたシステムリソースとメモリリソースを解放
これで完了です。

実行前のテーブル


実行するエクセル画面


実行後のテーブル
1番目のレコードが変更されています。



2008-09-23

Tips174 - [ExcelでDAOとSQL] MDBファイルのデータを編集

エクセルのVBAでMDBデータベースファイルのデータを編集します。
実行順
1)OpenDatabaseを使いデータベースファイルを開く
2)OpenRecordsetを使いテーブルを開く
3)Editを使いデータ編集
4)フィールドに編集するデータをセット
5)Updateを使い編集の実行
6)Closeを使いデータベースを閉じる
7)Set = Nothingで使われていたシステムリソースとメモリリソースを解放
これで完了です。

実行前のテーブルのフィールドデータ


実行Excel画面



実行後のフィールドデータ
データが変更されています。

2008-09-19

Tips173 - [ExcelでDAOとSQL] MDBファイルにデータを追加

エクセルのVBAでMDBデータベースファイルにデータを追加します。
作成順
1)OpenDatabaseを使いデータベースファイルを開く
2)OpenRecordsetを使いテーブルを開く
3)AddNewを使いデータ追加
4)フィールドにデータをセット
5)Updateを使い追加の実行
6)Closeを使いデータベースを閉じる
7)Set = Nothingで使われていたシステムリソースとメモリリソースを解放
これで完了です。

実行Excel画面


実行結果
Field1に「Excel」、Field2に「データベース」が登録されています。

2008-09-15

Tips172 - [ExcelでDAOとSQL] MDBファイルの作成

エクセルのVBAでMDBデータベースファイルを新規作成します。


作成順
1)CreateDatabaseを使いデータベースファイルを作成
2)CreateTableDefを使いテーブルを作成
3)CreateFieldを使いフィールドを作成
4)Closeでデータベースを閉じます
5)Set = Nothingで使われていたシステムリソースとメモリリソースを解放
これで完了です。

実行Excel画面


作成されたMDBファイルのテーブルデザイン

2008-09-12

Tips171 - [ExcelでDAOとSQL] DAOを使う準備

エクセルでDAOを使うには事前に参照設定を行う必要があります。
参照設定を行う手順

1)メニュー - 「マクロ」 - 「Visual Basic Editor」をクリック

2)VBEメニューの 「ツール」 - 「参照設定」をクリック


3)参照設定画面で「Microsoft DAO 3.6 Object Library」にチェックを入れます。

※ この画面はExcel2002のものです、ExcelのバージョンによってはDAOのバージョンが「3.6」でない場合があります。
これで設定は完了です。DAOが使えるはずです。

2008-09-10

Tips170 - [ExcelでDAOとSQL] DAOを使う

DAO(Data Access Object)とは、マイクロソフト社が提供するデータベースを操作するためのプログラミングインターフェースです。
Microsoft JetエンジンとかAccessデータベースとも言われています。
DAOを使うと、MS Accessのデータベースを操作できます。
DAOライブラリを使うと、C++、VB(Visual Basic)、Javaなど言語を用いて、データベースにアクセスすることができます。

DAOはExcelでも使用できます。
Excelのデータベースソフトと言えば、シート上にデータを蓄積し、ソートや検索などの操作を行いますが、データ型やサイズが決まっていないので信頼できるデータになりにくいことになります。
その点、DAOは多くのソフトで使用され信頼できます。
ここではExcelでどのように使用するか、問題なく使用できるかを探っていきたいと思います。
これがうまく行けば、Excelでも安定した顧客管理等のデータベースソフトが作成できるかと思います。

2008-09-08

Tips169 - 現在の日付と時間を取得する NOW関数

NOW関数を使うと、コンピュータのシステムの日付と時刻を取得できます。
構文:NOW()

実行例:
SQL = "SELECT NOW()"

2008/09/08 13:19:22

2008-09-06

Tips168 - 日付から分を取り出す SECOND関数

指定した日付から、秒の部分を取得します。
構文:SECOND(日付)、SECOND(日付フィールド)

実行例:
作成日から年を取り出しています。
SQL = "SELECT 販売日, SECOND(販売日) FROM 販売管理テーブル"

2007/9/10 8:45:12 - 12
2007/03/13 12:55:01 - 1
2008/12/01 21:08:56 - 56

2008-09-03

Tips167 - 日付から分を取り出す MINUTE関数

指定した日付から、分の部分を取得します。
構文:MINUTE(日付)、MINUTE(日付フィールド)

実行例:
作成日から年を取り出しています。
SQL = "SELECT 登録日, MINUTE(登録日) FROM 書籍管理テーブル"

2007/10/12 8:45:12 - 45
2007/05/15 12:55:01 - 55
2008/02/01 21:08:56 - 8

2008-09-01

Tips166 - 日付から時間を取り出す HOUR関数

指定した日付から、時間の部分を取得します。
構文:HOUR(日付)、HOUR(日付フィールド)

実行例:
作成日から年を取り出しています。
SQL = "SELECT 入庫日, HOUR(入庫日) FROM 販売テーブル"

2007/10/12 8:45:12 - 8
2007/05/15 12:55:01 - 12
2008/02/01 21:08:56 - 21