VB実用Ⅲ① ADOでファイル操作

Size: px
Start display at page:

Download "VB実用Ⅲ① ADOでファイル操作"

Transcription

1 ADO でファイル操作 VB オートメーション 1 プログラムの概要 事務処理に於いて Microsoft Office は 業界標準 (De Facto Standard) で有ると謂う事が出来る 此の Office に含まれる Excel は スプレッドシートソフトで有り データベースソフトと仕ては Access が用意されて居る 其の為 本格的なデータベースと仕ての使用には Access 等の導入を検討す可きで有るが 小規模なデータベースでは Excel で代用されて居る事も多い 亦 Execl の他に データファイルと仕て CSV ファイルや TSV ファイル ( タブ区切りファイル ) も多く用いられて居る 其処で 今回は 従来からの接続型の ADO に加えて.NET Framework で採用されて居る非接続型の ADO.NET と 充実したデータベース操作用コンポーネントを用いて 此等を Visual Basic から データベースと仕て使用する手法を 重点的に学ぶ 此処では 此等のファイルから 必要なデータを SQL( クエリ ) を使用して抽出し データセットやレコードセットに格納された情報を 個々に操作する方法を習得して欲しい 今回の課題項目 ActiveX Data Objects(ADODB オブジェクト 参照設定 ) ADODC に依る接続 ( プロパティページの利用 ConnectionString) 接続文字列の設定 (Provider Data Source Extended Properties) レコードソースの指定 (RecordSource SQL 選択クエリ 範囲指定 ) データバインディング ( データグリッド DataSource プロパティ ) データバインディング ( テキストボックス DataSource DataMember プロパティ ) SQL 構文 (SELECT 構文 WHERE 句 ORDER BY 句 ) 今回の重点項目 接続文字列の設定 (Extended Properties) レコードソースの指定 ( 範囲指定 [Sheet1$]) データバインディング ( データグリッド DataSource プロパティ ) データバインディング ( テキストボックス DataSource DataMember プロパティ ) SQL 構文 (SELECT 構文 WHERE 句 ORDER BY 句 ) -1-

2 ADODB の参照設定 Visual Studio では.NET 以降 ADO.NET が追加され 非接続型処理が可能と成ったが 従来の接続型の ADO(ADODB) も使用する事が出来 選択肢が増えた リアルタイム処理を行う接続型は データベース操作の基本と成る物で有るので 此処では ADODB を扱う事にする Visual Studio 2005 でも 従来同様 ADODB を使用するには プログラムをコンパイル 又は ビルトする際に必要と成る参照設定を行う必要が有る Visual Studio 2005 で ADODB の参照設定を行うには 先ず メニューバーの プロジェクト で 参照の追加 をクリックして ダイアログを開く ダイアログの COM タブで Microsoft ActiveX Data Object x.x Library と謂う名前のコンポーネントを選択して OK ボタンをクリックすれば 参照の追加が完了する (x.x は バージョンを示す ) -2-

3 オブジェクト プロパティ一覧 DataGridView グループボックス 1 グループボックス 2 ラジオボタン 1 ラジオボタン 2 ラジオボタン 3(11 個 ) コントロールの種類 プロパティ プロパティの設定値 フォーム Name AdoExcel Anchor Font MS 明朝 標準 9 StartPosition CenterScreen Text ADODB で EXCEL 操作 DataGridView Name dgvmember Anchor Top, Bottom, Left, Right グループボックス1 Name grpsort Anchor Bottom, Left Text ソート グループボックス2 Name grpindex Anchor Bottom, Left Text 索引 ラジオボタン1 Name radnumber Checked True Text 番号順 ラジオボタン2 Name radname Text 名前順 ラジオボタン3 Name rada radk rads radt radn radh radm rady radr radw radall( 左から順 ) Appearance Button Checked radall を True Text あ か さ ら わ 全 ( 左から順 ) TextAlign MiddleCenter Value Index 10 を True -3-

4 ADODB で EXCEL を操作するプログラムリスト '=================================================================== ' Microsoft ActiveX Data Object 2.5 Library への参照を追加して置く事 '=================================================================== Public Class AdoExcel Private Cn As New ADODB.Connection Private Rs As New ADODB.Recordset Private FirstFlag As Boolean = True 此処で宣言した変数の有効期間は 宣言された時点から プログラム の終了迄で有る ' フォームが読み込まれた時の処理 Private Sub AdoExcel_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) _ Handles MyBase.Load Dim SQL As String Dim Cs As String Dim P As String 此処で宣言した変数の有効期間は 宣言された時点から プロシージ ャの終了迄で有る ' 起動パスの取得 P = Application.StartupPath : If Not P.EndsWith( " " ) Then P &= " " ' 接続文字列の設定 Cs = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=" & P & " サークル名簿.xls;" & _ "Extended Properties=""Excel 8.0;"";" & _ "Persist Security Info=False" ' カーソルサービスの位置の設定とカーソルのオープン Cn.CursorLocation = ADODB.CursorLocationEnum.adUseClient Cn.Open( Cs ) ダブルコーテーションを 2 個連続して記述すると 引用符と仕ての意味を喪失し 単成るダブルコーテーションを示す文字と成る 此処では データソースにサークル名簿と謂うエクセルシートを指定して居る ' 選択クエリの設定 SQL = "SELECT * FROM [ サークル名簿 $];" ' レコードセットのオープンと選択クエリの実行 Rs.Open( SQL, Cn ) ' データグリッドビューへのデータ表示 Call DispData( ) FirstFlag = False End Sub Excel のシート名がテーブル名と仕て扱われる 選択クエリを指定し コネクションを通じてレコードセットを開くと データが取得される プログラム末尾で定義して居るメソッド ( ジェネラルプロシージャ ) を呼び出して居る ' フォームが閉じられ様と仕た時の処理 Private Sub AdoExcel_FormClosing( ByVal sender As Object, _ ByVal e As System.Windows.Forms.FormClosingEventArgs ) Handles Me.FormClosing -4-

5 If MessageBox.Show( " 終了しますか?", " プログラムの終了 ", MessageBoxButtons.YesNo, _ MessageBoxIcon.Question ) = Windows.Forms.DialogResult.Yes Then If Rs IsNot Nothing Then Rs.Close( ) : Rs = Nothing If Cn IsNot Nothing Then Cn.Close( ) : Cn = Nothing メモリに塵埃を残さない様 コネ Application.Exit( ) クションとレコードセットを閉じ Else て メモリから解放し 終了する e.cancel = True End If e.cancel に True の値を設定する End Sub 事に依り プログラムの終了をキ ャンセルする事が出来る ' ラジオボタン ( あ~わ 全 ) のチェックが変化した時の処理 Private Sub RadioButtonCheckedChanged( ByVal sender As System.Object, _ ByVal e As System.EventArgs ) _ Handles rada.checkedchanged, rady.checkedchanged, radw.checkedchanged, _ radt.checkedchanged, rads.checkedchanged, radr.checkedchanged, _ radn.checkedchanged, radm.checkedchanged, radk.checkedchanged, _ radh.checkedchanged, radall.checkedchanged ' フォーム生成時のイベント発生の防止 If FirstFlag Then Exit Sub Dim OBJ As RadioButton = DirectCast( sender, RadioButton ) Dim SQL As String = "" Dim FLT As String = "" 此処で宣言した変数は宣言したサ Dim SRT As String = "" ブプロシージャ内でしか値の参照 ' フィルタ ( 抽出条件 ) の設定 Select Case OBJ.Text Case " あ ": FLT = " フリガナ <' カ '" Case " か ": FLT = " フリガナ >' オ ン ' AND フリガナ <' サ '" Case " さ ": FLT = " フリガナ >' コ ン ' AND フリガナ <' タ '" Case " た ": FLT = " フリガナ >' ソ ン ' AND フリガナ <' ナ '" Case " な ": FLT = " フリガナ >' ト ン ' AND フリガナ <' ハ '" Case " は ": FLT = " フリガナ >' ノ ン ' AND フリガナ <' マ '" Case " ま ": FLT = " フリガナ >' ホ ン ' AND フリガナ <' ヤ '" Case " や ": FLT = " フリガナ >' モ ン ' AND フリガナ <' ラ '" Case " ら ": FLT = " フリガナ >' ヨ ン ' AND フリガナ <' ワ '" Case " わ ": FLT = " フリガナ >' ロ ン ' AND フリガナ <' ン '" Case " 全 ": FLT = "" End Select ' ソート項目の設定 If radnumber.checked Then SRT = " 登録番号 " Else SRT = " フリガナ " End If 注意 と設定を行う事が出来ない 条件文の記述には 此の他にも Like 演算子とワイルドカードを 用いる方法も有る 此のイベントプロシージャを最初に実行した時に 選択された CollatingSequence は OS でサポートされて居ない と謂うエラー メッセージが表示される事が有る 此のメッセージは Visual Basic の IDE( 統合開発環境 ) で而巳表示 され コンパイル済みのプログラムでは表示されない 開発時の対処法と仕ては エラーメッセージが表示されると 一旦 プログラムを終了し 再度実行すると良い -5-

6 ' 選択クエリの設定 If FLT = "" Then SQL = "SELECT * FROM [ サークル名簿 $] ORDER BY " & SRT & " ASC;" Else SQL = "SELECT * FROM [ サークル名簿 $] WHERE " & FLT & _ " ORDER BY " & SRT & " ASC;" End If ' レコードセットのオープンと選択クエリの実行 Rs.Close( ) Rs.Open( SQL, Cn ) ' データグリッドビューへのデータ表示 Call DispData( ) End Sub ソートは ORDER BY にフィールド名を指定する 昇順の場合は ASC 降順の場合は DESC を付ける (ASC は省略可 ) ' データグリッドビューへデータを表示するメソッド Private Sub DispData( ) Dim I As Integer Dim J As Integer Dim C As Integer = Rs.Fields.Count - 1 ' データグリッドビューに列を追加 ( フォームロード時而巳 ) If FirstFlag Then For I = 0 To C dgvmember.columns.add( Rs.Fields( I ).Name, Rs.Fields( I ).Name ) Next End If ' データグリッドビューに行を追加 dgvmember.rows.clear( ) For I = 1 To Rs.RecordCount Dim R As New DataGridViewRow( ) R.CreateCells( dgvmember ) For J = 0 To C R.Cells( J ).Value = Rs.Fields( J ).Value & "" Next dgvmember.rows.add( R ) Rs.MoveNext( ) Next End Sub End Class 使用する Excel の種類に応じた Extended Properties の値は 下記の通りで有る Excel 8.0:Excel 97 Excel 2000 Excel 2002 (Excel Version 8.0, 9.0,10.0) Excel 5.0:Excel 95 (Excel Version 7.0) -6-

7 ADODB で CSV を操作するプログラムリスト ( 変更点 ) Private Sub AdoCsv_Load( フォームが読み込まれた時の処理 ) ' 接続文字列の設定 Cs = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=. ;" & _ "Extended Properties=""Text;Delimited;"";" & _ "Persist Security Info=False". は 相対パスを指定する記述法 で カレントディレクトリを意味 する ' 選択クエリの設定 SQL = "SELECT * FROM サークル名簿.csv;" Private Sub RadioButtonCheckedChanged( ラジオボタンのチェックが変化した時の処理 ) ' 選択クエリの設定 If FLT = "" Then SQL = "SELECT * FROM サークル名簿.csv ORDER BY " & SRT & " ASC;" Else SQL = "SELECT * FROM サークル名簿.csv WHERE " & FLT & _ " ORDER BY " & SRT & " ASC;" End If 変更点 接続文字列 Excel では Data Source に Excel ファイル ( *.xls ) を指定するが CSV では Data Source に CSV ファイル ( *.csv ) が格納されて居るディレクトリ ( フォルダ ) を指定する 此の事は 同一ディレクトリに格納されて居る複数の CSV ファイルを 同一のデータベースに於ける複数のテーブルと看做す事が出来る事を意味して居る 亦 Excel では Extended Properties に "Excel x.x;" を指定するが CSV では "Text;Delimited;" を指定する デリミタ (Delimitation) は プログラミング用語と仕ては 区切り記号を意味して居るが 此処では カンマ (, ) を意味して居る 従って カンマ以外の区切り記号を使用して居る場合 ( タブ区切り等 ) は 対象と成らない事に注意を要する クエリでのテーブル指定 Excel では テーブル名にシート名を指定するが CSV では 対象と成る CSV ファイル名を指定する -7-

8 ADODB で TSV を操作するプログラムリスト ( 変更点 ) Private Sub AdoCsv_Load( フォームが読み込まれた時の処理 ) ' 接続文字列の設定 Cs = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=. ;" & _ "Extended Properties=""Text"";" & _ "Persist Security Info=False" ' 選択クエリの設定 SQL = "SELECT * FROM サークル名簿.txt;" Private Sub RadioButtonCheckedChanged( ラジオボタンのチェックが変化した時の処理 ) ' 選択クエリの設定 If FLT = "" Then SQL = "SELECT * FROM サークル名簿.txt ORDER BY " & SRT & " ASC;" Else SQL = "SELECT * FROM サークル名簿.txt WHERE " & FLT & _ " ORDER BY " & SRT & " ASC;" End If 変更点 接続文字列 Excel では Data Source に Excel ファイル ( *.xls ) を指定するが TSV では Data Source に TSV ファイル ( *.txt ) が格納されて居るディレクトリ ( フォルダ ) を指定する 此の事は 同一ディレクトリに格納されて居る複数の TSV ファイルを 同一のデータベースに於ける複数のテーブルと看做す事が出来る事を意味して居る 亦 Excel では Extended Properties に "Excel x.x;" を指定するが TSV では "Text;" を指定する デリミタ (Delimitation) は プログラミング用語と仕ては 区切り記号を意味して居るが 此処では カンマ (, ) を意味して居る 従って カンマ以外の区切り記号を使用して居る場合 ( タブ区切り等 ) は 対象と成らない為 別途 スキーマファイル ( 後述 ) を用意する必要が有る クエリでのテーブル指定 Excel では テーブル名にシート名を指定するが TSV では 対象と成る TSV ファイル名を指定する -8-

9 TSV ファイルの為のスキーマファイル 前述の様に Extended Properties で指定するデリミタ (Delimitation) は プログラミング用語と仕ては 区切り記号を意味して居るが 此処では カンマ (, ) を意味して居る為 カンマ以外の区切り記号を使用して居る場合 ( タブ区切り等 ) は Delimited を指定しても 其の対象と成らない為 別途でスキーマファイルを用意する必要が有る サンプルプログラムで使用して居るスキーマファイル (schema.ini) の内容は 下記の通りで有る 此れを TSV ファイルを格納して居るディレクトリ ( フォルダ ) に格納して置く必要が有る [ サークル名簿.txt] ColNameHeader=True Format=TabDelimited Col1= 登録番号 Text Col2= 氏名 Text Col3= フリガナ Text Col4= 郵便番号 Text Col5= 住所 Text Col6= 電話番号 Text Col7= 職種 / 業種 Text Col8= 生年月日 Text 1 行目には ブラケット ( [ ] ) で囲み 対象と成る TSV ファイル名を指定する 2 行目の ColNameHeader キーには 最初の行がタイトル行 ( 列見出し ) で有る場合は True を 然うでない場合 ( 最初からデータ行 ) は False を指定する 3 行目の Format キーには 区切り文字を設定する 区切り文字には 下記が設定出来る TabDelimited: タブを区切り文字とする場合 CSVDelimited: カンマを区切り文字とする場合 Delimited(< 文字 >): 引数に指定した 1 文字を区切り文字とする場合 カンマ区切りの場合は 特にスキーマファイルを作成する必要は無いので CSVDelimited を指定する事は 先ず無いと思われる 4 行目以降の Col1~ キーには 各フィールドのフィールド名とデータ型等を設定する データ型に指定出来る値は 下記の通りで有る データ型 Bit 型バイト型整数型長整数型通貨型単精度浮動小数点数型倍精度浮動小数点数型日付 / 時刻型テキスト型メモ型 Bit Byte Short Long Currency Single Double DateTime Text Memo 指定値 -9-

10 OleDb で EXCEL を操作するプログラムリスト 前述の変更を行えば CSV や TSV にも適用可能 Imports System.Data.OleDb Public Class AdoExcel Private Cn As New OleDbConnection( ) Private Cm As New OleDbCommand( ) Private Da As New OleDbDataAdapter( ) Private Ds As New DataSet( ) データベースを操作する為のオブジェクトを宣言して居る 取得したデータを格納する為のオブジェクトを宣言して居る Private FirstFlag As Boolean = True ' フォームが読み込まれた時の処理 Private Sub AdoTsv_Load( ByVal sender As System.Object, ByVal e As System.EventArgs ) _ Handles MyBase.Load Dim SQL As String Dim Cs As String Dim P As String ' 起動パスの取得 P = Application.StartupPath : If Not P.EndsWith( " " ) Then P &= " " ' 接続文字列の設定 Cs = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=" & P & " サークル名簿.xls;" & _ "Extended Properties=""Excel 8.0;"";" & _ "Persist Security Info=False" Cn.ConnectionString = Cs 接続文字列は ADO の場合と全く 同じで有る ' コネクションの設定 Cm.Connection = Cn ' 選択クエリの設定 SQL = "SELECT * FROM [ サークル名簿 $];" Cm.CommandText = SQL ' データの取得 Da.SelectCommand = Cm Ds.Clear( ) Da.Fill(Ds, "circle") ' データグリッドビューへのデータ表示 Call DispData( ) FirstFlag = False End Sub データベースより 選択クエリで抽出したデータを データセットに circle と謂う名前を付けて格納して居る -10-

11 ' フォームが閉じられ様と仕た時の処理 Private Sub AdoCsv_FormClosing( ByVal sender As Object, _ ByVal e As System.Windows.Forms.FormClosingEventArgs ) Handles Me.FormClosing If MessageBox.Show( " 終了しますか?", " プログラムの終了 ", MessageBoxButtons.YesNo, _ MessageBoxIcon.Question ) = Windows.Forms.DialogResult.Yes Then If Ds IsNot Nothing Then Ds.Dispose( ) If Da IsNot Nothing Then Da.Dispose( ) If Cm IsNot Nothing Then Cm.Dispose( ) If Cn IsNot Nothing Then Cn.Close( ) : Cn.Dispose( ) Application.Exit( ) Else e.cancel = True End If End Sub ' ラジオボタン ( あ ~ わ 全 ) のチェックが変化した時の処理 Private Sub RadioButtonCheckedChanged( ByVal sender As System.Object, _ ByVal e As System.EventArgs ) _ Handles rada.checkedchanged, rady.checkedchanged, radw.checkedchanged, _ radt.checkedchanged, rads.checkedchanged, radr.checkedchanged, _ radn.checkedchanged, radm.checkedchanged, radk.checkedchanged, _ radh.checkedchanged, radall.checkedchanged ' フォーム生成時のイベント発生の防止 If FirstFlag Then Exit Sub Dim OBJ As RadioButton = DirectCast( sender, RadioButton ) Dim SQL As String = "" Dim FLT As String = "" Dim SRT As String = "" ' フィルタ ( 抽出条件 ) の設定 Select Case OBJ.Text Case " あ ": FLT = " フリガナ <' カ '" Case " か ": FLT = " フリガナ >' オ ン ' AND フリガナ <' サ '" Case " さ ": FLT = " フリガナ >' コ ン ' AND フリガナ <' タ '" Case " た ": FLT = " フリガナ >' ソ ン ' AND フリガナ <' ナ '" Case " な ": FLT = " フリガナ >' ト ン ' AND フリガナ <' ハ '" Case " は ": FLT = " フリガナ >' ノ ン ' AND フリガナ <' マ '" Case " ま ": FLT = " フリガナ >' ホ ン ' AND フリガナ <' ヤ '" Case " や ": FLT = " フリガナ >' モ ン ' AND フリガナ <' ラ '" Case " ら ": FLT = " フリガナ >' ヨ ン ' AND フリガナ <' ワ '" Case " わ ": FLT = " フリガナ >' ロ ン ' AND フリガナ <' ン '" Case " 全 ": FLT = "" End Select -11-

12 ' ソート項目の設定 If radnumber.checked Then SRT = " 登録番号 " Else SRT = " フリガナ " End If If FLT = "" Then SQL = "SELECT * FROM [ サークル名簿 $] ORDER BY " & SRT & " ASC;" Else SQL = "SELECT * FROM [ サークル名簿 $] WHERE " & FLT & _ " ORDER BY " & SRT & " ASC;" End If Cm.CommandText = SQL ' データの取得 Da.SelectCommand = Cm Ds.Clear( ) Da.Fill( Ds, "circle" ) ' データグリッドビューへのデータ表示 Call DispData( ) End Sub ' データグリッドビューへデータを表示するメソッド Private Sub DispData( ) Dim I As Integer Dim J As Integer Dim C As Integer = Ds.Tables( "circle" ).Columns.Count - 1 ' データグリッドビューに列を追加 ( フォームロード時而巳 ) If FirstFlag Then For I = 0 To C dgvmember.columns.add( Ds.Tables( "circle" ).Columns( I ).ColumnName, _ Ds.Tables( "circle" ).Columns( I ).ColumnName ) Next End If 参考 ' データグリッドビューに行を追加 dgvmember.rows.clear( ) For I = 0 To ( Ds.Tables( "circle" ).Rows.Count - 1 ) Dim R As New DataGridViewRow( ) R.CreateCells( dgvmember ) For J = 0 To C R.Cells( J ).Value = Ds.Tables( "circle" ).Rows( I ).Item( J ) Next dgvmember.rows.add( R ) Next End Sub End Class -12- 此処では データセットに格納 された個々のデータを操作す る方法を理解して貰う為に 此 の様な方法を採用して居るが データセットは 簡単に 下記 の様に データグリッドビュー とバインドする事が出来る With dgvmember.datasource = Ds.DataMember = "circle" End With

13 ADO と ADO.NET Visual Basic.NET では 従来の ADO を従来の方法で使用する事も出来るが 通常 データベースにアクセスする為に ADO.NET を使用する 此処では Windows 上で動作するアプリケーションの開発に必要な知識を中心に ADO と ADO.NET の差異を説明する Visual Basic 6.0 では データベースにアクセスする為に ADO(ActiveX Data Object) を使用するが ADO.NET は 此れを.NET Framework 用に進化させた物で有り 両者は データアクセスの概念に大きな差異が有る データアクセス用のコンポーネント ADO Visual Basic 6.0 では データアクセス用のコンポーネントに ADO データコントロール (ADODC) が有り 下記のを提供して居る データベースに接続する データベースから必要なデータを取得する フォーム上のコントロールとデータベースを連結する ADO.NET ADO.NET には ADO の様な便利なコンポーネントは無い コネクションを使用してデータベースに接続し データアダプタを使用して必要なデータを取得する データの保持方法 ADO ADO では 取得したデータをレコードセットで管理する レコードセットは メモリ上に保持した仮想テーブルの様な物で有る ADO.NET ADO.NET では データセットに依り データベースと同じ物をメモリ上に保持する事が出来る データセットには 複数のテーブルの構造や 主キーやリレーションシップ等の属性を定義する事が出来る 亦 実行時には 取得したデータを管理する事も出来る レコードの扱い方 ADO ADO のレコードセットに含まれるレコードは Bookmark プロパティに依り管理されて居り 孰れかのレコードが必ず選択された状態に成って居る 因みに レコードセットを取得した初期状態では 先頭のレコードが選択された状態に成って居る 此のレコードをカレントレコードと呼び 亦 MoveNext メソッドや MovePrevious メソッド等に依り カレントレコードを移動する事が出来る ADO.NET ADO.NET には カレントレコードと謂う概念は無い 其の為 レコードを移動する為のメソッドも無い データセットに保持されたデータは 行のコレクションと仕て扱われ 各レコードは 配列の要素番号を使用して識別する -13-

14 接続方法 ADO ADO では データベースに常時接続した状態で使用するのが基本で有る 其の為 常に最新のデータを取得し 更新する事も可能で有るが 実際には データの転送時以外は データベースに接続して居る必要が無い場合が多い 亦 データベースへの接続を維持する事で システムリソースを消費し パフォーマンスが低下すると謂う負の側面も有る データベース フォーム ADO.NET ADO.NET では データセットに依り データベースと粗同じ物をメモリ上に保持する事が出来るのでデータベースに接続する必要が有るのは データセットにデータを取得する時と データセットで変更した内容をデータベースに転送する時丈で有る 其れ以外の時はデータベースの接続を解除し データセットを利用してデータベース操作を行う フォーム データアダプタ コネクション データベース データセット ADO と ADO.NET の使い分け 新規にアプリケーションを開発する時は ADO.NET を利用すると 豊富なツールを利用して 効率良くアプリケーションを開発する事が出来る ADO.NET では データベースと常時接続する必要が無い為 システムの負荷を軽減する事が出来る 併し 非接続型故に 大量のレコードの即時更新や 常に最新の情報が必要な場合には 不適格で有り 此の様な場合は 常時接続型の ADO を利用すると良い.NET Framework でも ADO は サポートされて居る -14-

15 ADODB.Connection オブジェクト データベースと接続する為のオブジェクト Connection オブジェクトは データソースへの接続を表し データソースとの固有のセッションを表す クライアントサーバーデータベースシステムの場合 此のオブジェクトはサーバーへの実際のネットワークに対応する ADODB.Connection の Open メソッド データソースへの接続を開くメソッド Connection.Open( 引数 1, 引数 2, 引数 3, 引数 4 ) データソースへの物理的な接続を設定する 此のメソッドが完了すると接続状態が確立し コマンドを発行して結果を処理する事が出来る 引数 1 には 接続情報 (ConnectionString 後述 ) を指定し 省略する事が出来る 引数 2 には 接続を確立する際に必要なユーザー名を指定し 省略する事が出来る 引数 3 には 接続を確立する際に必要なパスワードを指定し 省略する事が出来る 引数 4 には 同期接続 非同期接続の孰れかを示す定数を指定し 省略する事が出来る ADODB.Connection の Execute メソッド 指定されたクエリ SQL ステートメント ストアドプロシージャ等を実行するメソッド Connection.Execute( 引数 1, 引数 2, 引数 3 ) 指定した接続上で 引数 1 で指定されたメソッドに渡すクエリが実行される 引数 1 には 実行する SQL ステートメント テーブル名等を指定し 必ず指定する 引数 2 には プロバイダが返す操作の結果を反映するレコード数を指定し 省略する事が出来る 引数 3 には プロバイダが引数 1 を評価する方法を示す定数を指定し 省略する事が出来る ADODB.Connection の Close メソッド 開いて居るオブジェクト 及び 依存する総てのオブジェクトを閉じるメソッド Connection.Close( ) Connection オブジェクトを閉じて 関連するシステムリソースを解放する オブジェクトを閉じてもメモリからは削除されず プロパティ設定を変更してもう一度開く事が出来る メモリからオブジェクトを完全に削除するには オブジェクト変数を Nothing に設定する (Dispose メソッドがサポートされて居ないオブジェクトの開放は Nothing を代入する事で行う ) -15-

16 ADODB.Connection の ConnectionString プロパティ データソースへの接続を確立する為に必要な情報を設定 取得するプロパティ Connection.ConnectionString = " キーワード 1= 値 ; キーワード 2= 値 ; " セミコロンで区切られた一連の引数と値のセットを含む詳細な接続文字列を引き渡す事に依りデータソースを指定する キーワードの内 省略出来ないキーワードは Provider と Data Source の 2 種で有る Provider キーワード : 接続するデータベースの種類を表す Access2000 形式のデータベースに接続する場合は Microsoft.Jet.OLEDB.4.0 と謂う値を使用する Data Source キーワード : 接続するデータベースファイル名をドライブ名からパスを含めた形で指定出来る パス名を省略した場合は, カレントフォルダが対象に成る ADO は ConnectionString プロパティで 4 種類の引数をサポートして居る 其他の引数は ADO で処理されずに 直接プロバイダに引き渡される 下記に ADO がサポートする引数を示す 引数 説明 Provider= 接続に使用するプロバイダ名を指定 File Name= 設定済みの接続情報を含むプロバイダ固有のファイル名を指定 Remote Provider= クライアント側の接続を開く際に使用するプロバイダ名を指定 (RDS 而巳 ) Remote Server= クライアント側の接続を開く際に使用するサーバーのパス名を指定 (RDS 而巳 ) URL= ファイルやディレクトリ等のリソースを識別する絶対 URL を指定 ConnectionString プロパティを設定して Connection オブジェクトを開いた後で プロバイダがプロパティの内容を変更する場合が有る 例えば ADO で定義された引数名が プロバイダで該当する引数名にマップされる場合等で有る ConnectionString プロパティは Open メソッドの ConnectionString 引数に使用された値を自動的に継承する 従って Open メソッドの呼び出し中に現在の ConnectionString プロパティを上書きする事が出来る File Name 引数に依り関連の有るプロバイダが呼び出される為 Provider と File Name 引数の両方を引き渡す事は出来ない 接続が閉じて居る場合の ConnectionString プロパティは読み取り 書き込みの両用に成って居るが 接続が開いて居る場合は読み取り専用に成って居る ConnectionString プロパティで引数が重複しても無視される 引数では 最後のインスタンスが適用される RDS での使用 : クライアント側の Connection オブジェクトで使用される場合 ConnectionString プロパティには Remote Provider 及び Remote Server パラメータ而巳を指定する 猶 RDS(Remote Data Service) とは Internet Information Server 等を中継して データソースへのアクセス 及び 更新を行う事を目的とするオブジェクトを謂う -16-

17 Visual Basic 6.0 に付属して居る OLE DB プロバイダ毎の設定値は 下記の通りで有る OLE DB プロバイダ Microsoft Jet 4.0 OLE DB Provider Microsoft Jet 3.51 OLE DB Provider Microsoft OLE DB Provider for SQL Server Microsoft OLE DB Provider for Oracle Microsoft OLE DB Provider for ODBC Drivers ConnectString プロパティの例 Provider=Microsoft.Jet.OLEDB.4.0;Data Source=MDB ファイル名 Provider=Microsoft.Jet.OLEDB.3.51;Data Source=MDB ファイル名 Provider=SQLOLEDB;User ID= ユーザー ID;Data Source= サーバー名 Provider=MSDAORA; User ID= ユーザー ID;Data Source= データベース別名 Provider=MSDASQL;User ID= ユーザー ID;Data Source= データソース名 ADO では データベースの種類を Connection の Extended Properties プロパティで指定する 下記の表は 開こうとして居る ISAM の指定に使用する文字列の一覧で有る データベース dbase III dbase III; dbase IV dbase IV; dbase 5 dbase 5.0; Paradox 3.x Paradox 3.x; Paradox 4.x Paradox 4.x; Paradox 5.x Paradox 5.x; Excel 3.0 Excel 3.0; Excel 4.0 Excel 4.0; Excel 5.0 / Excel 95 Excel 5.0; Excel 97 Excel 97; Excel 2000 Excel 8.0; HTML Import HTML Import; HTML Export HTML Export; Text(CSV ファイル TSV ファイル等 ) Text; ODBC ODBC; DATABASE=database; UID=user; PWD=password; DSN=datasourcename; 文字列 Persist Security Info は 機密扱いの認証情報を保存するか何うかを設定し True なら保存する False なら保存しないと謂う事に成る Persist Security Info を True に設定すると ユーザー ID やパスワード等のセキュリティ関連情報は 接続を開いた後も 接続から取得する事が出来る 接続時にユーザー ID とパスワードを渡して居る場合には 接続を開いた後で 其の情報を破棄する事が最も安全で有る 即ち セキュリティを向上させる方法は Persist Security Info を False に設定する事で有る 此れは 開いた状態の接続を信頼されて居ないソースに提供したり 接続情報をディスクに保持して居る場合に特に重要で有る Persist Security Info を False の儘に仕て置けば 信頼されて居ないソースは 接続用のセキュリティ関連情報にアクセス出来ず セキュリティ関連情報が接続文字列情報と共にディスクに保存される事も無い Persist Security Info は 既定では False に設定されて居る -17-

18 ADODB.Connection の CommandType プロパティ Command オブジェクトの型を設定 取得するプロパティ Connection.CommandType = 定数 CommandType プロパティの評価を最適化する目的で使用する 定数には 下記の CommandTypeEnum 値を設定する 定数説明 adcmdtext CommandText をコマンド文字列に依る定義 又は ストアドプロシージャの呼出と仕て評価する adcmdtable CommandText を 総ての列が内部で生成された SQL クエリーに依り返されるテーブル名と仕て評価する adcmdtabledirect CommandText を総ての列を返すテーブル名と仕て評価する adcmdstoredproc CommandText をストアドプロシージャ名と仕て評価する adcmdunknown CommandText プロパティのコマンドタイプは不明で有る ( 既定値 ) adcmdfile CommandText を永続化されて居る Recordset のファイル名と仕て評価する adexecutenorecords CommandText が 行を返さないコマンド 又は ストアドプロシージャ ( 例えば データの挿入而巳を行うコマンド ) で有る事を示す 行が取得されても 其等は破棄され 返されない 常に adcmdtext 又は adcmdstoredproc と組み合わせて使用する CommandType プロパティの値が adcmdunknown( 既定値 ) の場合 パフォーマンスが低下する事が有る 此れは CommandText プロパティの型が SQL ステートメント ストアドプロシージャ 又はテーブル名の孰れかで有るかを調べる為にプロバイダを呼び出す必要が有る為で有る 使用して居るコマンドタイプが明らかな場合は CommandType プロパティを設定する事に依り 該当するコードに直接移動する事が出来る CommandType プロパティが CommandText プロパティのコマンドタイプと一致しない場合に Execute メソッドを呼び出すと エラーが発生する adexecutenorecords 定数は 内部処理を最小限にする事でパフォーマンスを向上させる 此の定数は単独で使用される事は無い 常に adcmdtext 又は adcmdstoredproc と組み合わせて使用される ( 例えば adcmdtext+adexecutenorecords) adexecutenorecords が Recordset.Open メソッド 又はメソッドに使用されて居る Command オブジェクトと使用された場合 エラーが発生する 参考 :CommandText プロパティは SQL ステートメント テーブル名 又は ストアドプロシージャの呼出等 プロバイダのコマンドを含む文字列型の値を設定 取得するプロパティで 既定値はヌルストリング ( 長さ 0 の文字列 ) で有る 通常は SQL ステートメントを使用するが ストアドプロシージャの呼出等 プロバイダが認識する他の種類のコマンドステートメントでも構わない 猶 SQL ステートメントは 特定の文法 又は プロバイダのクエリープロセッサがサポートするバージョンでなければ成らない CommandType プロパティの設定値に依り CommandText プロパティが変更される場合が有る CommandText プロパティは何時でも読み出す事が出来 ADO がコマンド実行中に使用する実際のコマンド文字列の参照も可能で有る -18-

19 ADODB.Connection の CursorType プロパティ Recordset オブジェクトで使用されて居るカーソルタイプを設定 取得するプロパティ Connection.CursorType = 定数 Recordset オブジェクトを開く時に使用するカーソルタイプを指定する為に使用する 定数には 下記の CursorTypeEnum 値を設定する 定数 adopenforwardonly adopenkeyset adopendynamic adopenstatic 説明前方スクロールタイプカーソル レコードを前方向而巳にスクロール出来る事を除き 静的カーソルと同じ属性を持つ レコードセットを一度丈スクロールする必要が有る場合は 此のカーソルに依り性能を向上させる事が出来る ( 既定値 ) キーセットカーソル 動的カーソルと同じ様な属性を持つが 他のユーザが追加したレコードを表示せず 使用中のレコードセットから他のユーザが削除したレコードへのアクセスを許可しない 猶 他のユーザが変更したデータを表示する事は出来る 動的カーソル 他のユーザに依る追加 変更 及び 削除を観る事が出来プロバイダがサポートしないブックマークを除いて レコードセットで許容されて居る総ての種類の移動を行う事が出来る 静的カーソル データの検索 又は レポートの作成に使用する為の レコードの静的コピーで有る 他のユーザに依る追加 変更 又は 削除は表示されない CursorType プロパティは Recordset が閉じて居る場合は 読み取り 書き込み 開いて居る場合は読み取り専用に成って居る CursorLocation プロパティが aduseclient に設定されて居る場合 adusestatic の設定而巳サポートされて居る サポートされて居ない値が設定された場合でも エラーは発生しない 此の場合 サポートされる最も類似する CursorType が代わりに使用される 要求したカーソルタイプをプロバイダがサポートして居ない場合 他のカーソルタイプが返される Recordset オブジェクトが開いて居る時 CursorType プロパティは実際に使用されて居るカーソルタイプと一致する様に変更される 返されたカーソル特有のを調べるには Supports メソッドを使用する Recordset を閉じると CursorType プロパティは元の設定値に戻えう 注意 : 動的カーソル 又は 前方スクロールタイプカーソルで Supports(adUpdateBatch) が True を返す事が有るが バッチ更新はキーセットカーソル 又は 静的カーソルで行う LockType プロパティを adlockbatchoptimistic に設定してから CursorLocation プロパティを aduseclient に設定して バッチ更新に必要な Microsoft Client Cursor Engine を有効にする RDS での使用 : クライアント側 (ADOR) の Recordset オブジェクトで使用される場合 CursorType プロパティは adopenstatic に而巳設定する事が出来る -19-

20 ADODB.Connection の CursorLocation プロパティ カーソルエンジンの場所を設定 取得するプロパティ Connection.CursorLocation = 定数 此のプロパティで プロバイダにアクセス可能な様々なカーソルライブラリの中からカーソルエンジンを選択する 通常は クライアント側カーソルライブラリ 又は サーバー側カーソルライブラリから選択する 定数には 下記の定数値を設定する 定数 adusenone aduseclient aduseserver 説明カーソルサービスは使用されない ( 此の定数は現在は使用されないが 以前のバージョンとの互換性を保つ為に装備されて居る ) ローカルカーソルライブラリより供給されたクライアント側のカーソルを使用する ローカルカーソルエンジンを使うと ドライバに依り供給されるカーソルには無い多くのを使う事が出来る 従って 此の設定を使用するとより高度なが提供される 以前のバージョンとの互換性を保つ為に 同じの aduseclientbatch もサポートされて居る データプロバイダカーソル 又は ドライバに依り供給されるカーソルを使用する 此等のカーソルは柔軟に使用出来 他のユーザがデータソースに加える変更を検出する事が出来る 併し Microsoft Client Cursor Provider の幾つかの ( 分離されたレコードセット等 ) はサーバー側カーソルではシミュレート出来ない為 此等のを此の設定で使用する事は出来ない ( 既定値 ) 此のプロパティ設定は プロパティが設定された後に確立された接続而巳に作用する CursorLocation プロパティを変更しても既存の接続には影響しない 此のプロパティは Connection 又は 閉じて居る Recordset 上では読み取り 書き込みで 開いて居る Recordset 上では読み取り専用で有る Connection.Execute カーソルは 此のプロパティ設定を継承する Recordsets は 自動的に此の設定を関連付けられた接続から継承する ADODB.Connection の RecordSource プロパティ レコードセットを返すステートメント又はクエリーを設定 取得するプロパティ Connection.RecordSource = 値 通常は選択クエリ (SELECT 構文 ) を指定する 値には レコードソースを指定する文字列式を指定し 設定値は 下記の通りで有る 設定値テーブル名 SQL クエリー 内容データベースのテーブルの名前で有る データソースに適した構文を使用した有効な SQL 文字列で有る -20-

21 ADODB.Recordset オブジェクト 検索文 ( 選択クエリ ) を発行した際にデータを格納する為のオブジェクト Recordset オブジェクトは 基に成るテーブルからのレコードセット全体 又は コマンドの実行に依り返された結果のレコードを表し 常にレコードセット内の1つのレコード而巳をカレントレコードと仕て参照する 亦 Recordset オブジェクトは レコード ( 行 ) とフィールド ( 列 ) で構成される Recordset オブジェクトは必要な丈 作成する事が出来る ADODB.Recordset の Open メソッド カーソルを開くメソッド Recordset.Open( 引数 1, 引数 2, 引数 3, 引数 4, 引数 5 ) ベーステーブルからのレコード クエリ結果 又は 以前に保存された Recordset を表すカーソルを開く事が出来る 引数 1 には 実行する SQL ステートメント テーブル名等を指定し 省略する事が出来る 引数 2 には 有効な Connection オブジェクト変数名を指定し 省略する事が出来る 引数 3 には Recordset を開く際にプロバイダが使うカーソルタイプを指定し 省略する事が出来る 引数 4 には Recordset を開く際にプロバイダが使うロックの種類を指定し 省略する事が出来る 引数 5 には プロバイダが引数 1 を評価する方法を示す定数を指定し 省略する事が出来る ADODB.Recordset の MoveNext メソッド 指定の Recordset オブジェクトの次のレコードに移動して 其のレコードをカレントレコードにするメソッド Recordset.MoveNext( ) カレントレコードの位置を Recordset の末尾に向かい 1 レコード進める カレントレコードが最後のレコードの場合に MoveNext メソッドを呼び出すと カレントレコードが Recordset の最後のレコードの後に設定され EOF が True に成る EOF プロパティが既に True の場合 前方へ移動しようとするとエラーが発生する カレントレコードの位置を変更するには 他に下記のメソッドが有る MoveFirst Recordset の最初のレコードに移動する MoveLast Recordset の最後のレコードに移動する MovePrevious Recordset の先頭に向かい 1 レコード戻る 前方スクロール而巳可能なレコードセットで両方向スクロールのサポートが必要な場合 CacheSize プロパティを使用してカーソルの後方スクロールをサポートするレコードキャッシュを作成し Move メソッドを使用して移動する事が出来る キャッシュされたレコードはメモリにロードされる為 必要以上のレコードのキャッシュは避ける可きで有る 前方スクロール而巳可能なレコードセットで MoveFirst メソッドを呼び出す事は出来るが 其の結果 Recordset オブジェクトを生成するコマンドをプロバイダが再度実行する可能性が有る -21-

22 ADODB.Recordset の Close メソッド 開いて居るオブジェクト 及び 依存する総てのオブジェクトを閉じるメソッド Recordset.Close( ) Recordset オブジェクトを閉じて 関連するシステムリソースを解放する オブジェクトを閉じてもメモリからは削除されず プロパティ設定を変更してもう一度開く事が出来る メモリからオブジェクトを完全に削除するには オブジェクト変数を Nothing に設定する (Dispose メソッドがサポートされて居ないオブジェクトの開放は Nothing を代入する事で行う ) ADODB.Recordset の Requery メソッド クエリを再実行して Recordset オブジェクトのデータを更新するメソッド Recordset.Requery( 引数 ) オブジェクトの基に成るクエリ (CommandText プロパティに設定されて居るクエリ ) を再実行して Recordset オブジェクトのデータを更新する 引数には 此の操作が作用するオプションを示すビットマスクを指定し 省略可能で有る 此のパラメータが adasyncexecute に設定されて居る場合 此の操作は非同期で実行され 完了すると RecordsetChangeComplete イベントが発生する Requery メソッドを使用して 元のコマンドを再実行してデータをもう一度格納する事に依り データソースから Recordset オブジェクトの内容全体を更新する 此のメソッドの呼出は Close 及び Open メソッドを連続して呼び出すのと同じ有る カレントレコードの編集中 又は 新規レコードを追加して居る時に此のメソッドを呼び出すと エラーが発生する Recordset オブジェクトが開いて居る間 カーソルの属性を定義するプロパティ (CursorType LockType MaxRecords 等 ) は読み取り専用に成って居る 此の為 Requery メソッドでは 現在のカーソルしか更新する事は出来ない カーソルのプロパティを変更して結果を参照するには Close メソッドを使用してプロパティをもう一度読み取り / 書き込み専用にする必要が有る 此の操作の後 プロパティ設定を変更して Open メソッドを呼び出し カーソルを再度開く ADODB.Recordset の RecordCount プロパティ Recordset オブジェクトに存在する現在のレコード数を示すプロパティ Recordset.RecordCount Recordset オブジェクトに有るレコード数を調べる為に使用する レコード数が解ら無い場合 又は プロバイダやカーソルの種類が RecordCount をサポートして居ない場合は プロパティは -1 を返す 閉じて居る Recordset 上で RecordCount プロパティを読み込むと エラーが発生する 猶 此のプロパティは ADODB.Connection オブジェクトの CursorLocation プロパティが aduseclient でないと サーバー側カーソルではシミュレート出来ない為 使用する事は出来ない -22-

23 ADODB.Recordset の Fields コレクション Recordset オブジェクトの総ての Field オブジェクトが含まれるコレクション Recordset オブジェクトは Recordset 内の列に対応する Field オブジェクトで構成される Fields コレクションを持つ Fields コレクションは コレクション内のオブジェクト数 ( 即ち フィールドの数 ) を示す Count プロパティが有る コレクションのメンバ ( 要素 ) は 常に 0 から順に番号が割り当てられる為 0 から Count プロパティより 1 小さい値迄のループを使用すると 総てのメンバにアクセスする事が出来る 猶 Count プロパティが 0 の場合 コレクションにはオブジェクトが含まれて居ない事を意味する 各々のメンバ (Field オブジェクト ) は 下記の様に フィールド名 又は 序数を用いて表わす事が出来る フィールド名使用 :Recordset.Fields( " タイトル " ) 序数使用 :Recordset.Fields( 1 ) 序数は SELECT 文で指定したフィールドの順番 ( アスタリスク * で総てのフィールドを指定した場合は テーブルに定義されて居る順番 ) に割り当てられ 最初の要素は 0 で有る ADODB.Recordset の Field オブジェクト 共通のデータ型を持つデータの列を表すオブジェクト Fields コレクション内の個々の Field オブジェクトを指す Field オブジェクトの Value プロパティを使用して カレントレコードのデータを設定 又は 参照する事が出来る 但し Field オブジェクトのコレクション メソッド プロパティの中には プロバイダが公開するに依っては使用出来ない物も有る 一般に Field オブジェクトのコレクション メソッド プロパティを使用して 次の操作が可能で有る Name プロパティを使用して フィールド名を参照する Value プロパティを使用して フィールド内のデータ表示や変更を行う Type Precision NumericScale プロパティを使用して フィールドの基本特性を参照する DefinedSize プロパティを使用して 宣言したフィールドサイズを参照する ActualSize プロパティを使用して 与えられたフィールド内の実際のデータサイズを参照する Attributes プロパティ Properties コレクションを使用して 指定フィールドで適用出来るの種類を識別する AppendChunk GetChunk メソッドを使用して 長バイナリ型や文字型データを含むフィールドの値を操作する 猶 総てのメタデータプロパティ (Name Type DefinedSize Precision NumericScale) は Field オブジェクトの Recordset を開く前に利用出来る 動的にフォームを作成する場合に便利で有る ADODB.Recordset の EOF プロパティ カレントレコードの位置が最後のレコードより後に有る事を示すプロパティ Recordset.EOF カレントレコードの位置が最後のレコードより後に有る場合は True を返し カレントレコードの位置が最後のレコード上 又は 其れ以前に有る場合は False を返す 猶 BOF プロパティは カレントレコードの位置が最初のレコードより前に有る場合は True を返し カレントレコードの位置が最初のレコード上 又は 其れ以降にある場合は False を返す BOF 及び EOF プロパティは Recordset オブジェクトがレコードを含むか何うか 又は 他のレコードに移動した時に Recordset オブジェクトの限界を超えて居ないか何うかを調べる為に使用する -23-

24 参考事項 ODBC 接続 Access ファイル同様 Excel ファイルや CSV TSV ファイルも ODBC(Open DataBase Connectivity) を使用して接続する事が出来る 猶 最初の行が列見出し ( フィールド名 ) でない Excel ファイルや CSV TSV ファイルでは ODBC ドライバのバグに依り FirstRowHasNames=0 を設定しても 最初の行は常に列見出しと看做される為最初の行が欠落して仕舞う事に注意を要する 接続文字列の Extended Properties 属性 データソースに Access ファイルを使用する場合は 通常 此の設定は 必要無いが Jet プロバイダは 特に指定が無ければ Access データベースを想定する為 Excel ファイルや CSV TSV ファイルに接続する場合 此の設定を省略すると 接続は正しく行われない 最初の行が列見出し ( フィールド名 ) でない Excel ファイルや CSV ファイルでは 既定では 最初の行を列見出しと看做す為 最初の行が欠落して仕舞うので 此処で Text; に続き HDR=No; を指定する必要が有る 此の場合 フィールドには プロバイダに依り F1 F2 等の名前が付けられる Microsoft Jet OLE DB 3.51 プロバイダの使用 Microsoft Jet OLE DB 3.51 プロバイダは Jet ISAM ドライバをサポートして居ない為 実行時に 組み込み可能な ISAM ドライバは見付かりませんでした と謂うエラーが発生する ユーザー名とパスワード ユーザー名やパスワードは Excel や CSV TSV ファイル接続には適用され無い為 無視する 猶 パスワードで保護された Excel ファイルはデータソースと仕て開く事は出来ない 其の為 ADO 接続で Excel ファイルを使用する場合は 予め パスワード保護を解除して置く必要が有る Excel に於けるレコードソースの指定 レコードソースの指定に関する記述法は 下記の通りで有る レコードソース 記述例 ワークシート シート名の後にドル記号を付け角括弧で囲む SELECT * FROM [Sheet1$] 名前付き範囲 定義済みの名前を使用する SELECT * FROM MyRange 名前無し範囲 シート名の後に範囲を記述して角括弧で囲む SELECR * FROM [Sheet1$A1:D10] 猶 上記では レコードソースの指定法に重点を置いて居る為 最も簡単な選択クエリを記述して居るが GROUP BY や WHERE を用いた選択クエリを記述する事も可能で有る 参考 : コマンドタイプに adcmdtext を選択すると コマンドテキストに選択クエリを入力する事に成るが コマンドタイプに adcmdtable を選択すると Jet プロパイダを使用して居る場合は 指定のブックで利用可能な名前付き範囲とワークシート名の両方が ドロップダウンリストに表示される 但し此の場合 ワークシート名にドル記号は正しく追加されるが 必要な角括弧は追加され無い為 手作業で ワークシート名を角括弧で囲む必要が有る事に注意を要する -24-

データベース1

データベース1 データベース操作プログラム Ⅱ VB9 プログラムの概要 オブジェクト型の変数宣言を行い コード上で データベースに接続し SQL を発行する 今回は オブジェクト型の変数宣言に依り データベースと接続する為のオブジェクト 及び 検索文を発行した際にデータを格納するオブジェクトを コード上で生成してデータベースに接続し 各レコードのフィールド情報を取得して 其れをコンボボックスの項目に追加する 此れに依り

More information

VB.NET解説

VB.NET解説 Visual Basic.NET データベース編 目次 ADO.NET の概要... 2 ADO.NET と ADO... 2 ADO.NET の仕組み... 4 ADO.NET の特徴... 7 データアクセスの基本... 8 Windows アプリケーションの開発手順... 8 データ接続の作成... 9 データアダプタとコネクションの作成...10 データセットの作成...14 データアクセスの利用...21

More information

データベースⅡ

データベースⅡ データベース操作プログラム Ⅱ VB 2005 9 プログラムの概要 オブジェクト型の変数宣言を行い コード上で データベースに接続し SQL を発行する 今回は オブジェクト型の変数宣言に依り データベースと接続する為のオブジェクト 及び 検索文を発行した際にデータを格納するオブジェクトを コード上で生成してデータベースに接続し 各レコードのフィールド情報を取得して 其れをコンボボックスの項目に追加する

More information

データベースⅠ

データベースⅠ データベース操作プログラム Ⅰ VB 2005 8 プログラムの概要 データベースプログラムを手軽に作成する方法としては Access のフォーム機能を用いる事が 先ず考えられます ウィザードも充実しており 操作を覚えれば簡単に作成する事が出来ます 其れでは VB でデータベースプログラムを作るメリットは何んでしょうか 1 つは Access のフォーム機能に比べ コントロールが充実している事 より自由なデザインが可能です

More information

データベースⅡ

データベースⅡ データベース操作プログラム Ⅱ C# 2005 9 プログラムの概要 オブジェクト型の変数宣言を行い コード上で データベースに接続し SQL を発行する 今回は オブジェクト型の変数宣言に依り データベースと接続する為のオブジェクト 及び 検索文を発行した際にデータを格納するオブジェクトを コード上で生成してデータベースに接続し 各レコードのフィールド情報を取得して 其れをコンボボックスの項目に追加する

More information

ADOとADO.NET

ADOとADO.NET ADO と ADO.NET Visual Basic.NET では 従来の ADO を従来の方法で使用する事も出来るが 通常 データベースにアクセスする為に ADO.NET を使用する 此処では Windows 上で動作するアプリケーションの開発に必要な知識を中心に ADO と ADO.NET の差異を説明する Visual Basic 6.0 では データベースにアクセスする為に ADO(ActiveX

More information

データベース1

データベース1 データベース操作プログラム Ⅲ VB20 プログラムの概要 ACCESS 等のデータベースの操作に不慣れな者でも 簡単に使用する事が出来るようなデータベースアプリケーションを目指します 今回は データグリッドをクリックする事に依り 其のレコードのフィールドデータを個別にテキストボックスやコンボボックスに表示するを付加する 此の際 カテゴリ ID や著者 ID の様に人間に解り難いデータ形式では無く

More information

DAOの利用

DAOの利用 DAO VB2005 で DAO を使用して Excel のデータを取得 Visual Basic 6.0 Dim DB As DAO.Database Dim RS As DAO.Recordset Dim xlfilename As String Dim xlsheetname As String xlfilename = Form1.StatusBar1.Panels(12) & Dir(Form1.StatusBar1.Panels(12)

More information

データベースⅢ

データベースⅢ データベース操作プログラム Ⅲ VB 2005 20 プログラムの概要 ACCESS 等のデータベースの操作に不慣れな者でも 簡単に使用する事が出来るようなデータベースアプリケーションを目指します 今回は データグリッドをクリックする事に依り 其のレコードのフィールドデータを個別にテキストボックスやコンボボックスに表示するを付加する 此の際 カテゴリ ID や著者 ID の様に人間に解り難いデータ形式では無く

More information

データベースⅠ

データベースⅠ データベース操作プログラム Ⅰ VB 2005 8 プログラムの概要 データベースプログラムを手軽に作成する方法としては Access のフォーム機能を用いる事が 先ず考えられます ウィザードも充実しており 操作を覚えれば簡単に作成する事が出来ます 其れでは VB でデータベースプログラムを作るメリットは何んでしょうか 1 つは Access のフォーム機能に比べ コントロールが充実している事 より自由なデザインが可能です

More information

データアダプタ概要

データアダプタ概要 データベース TableAdapter クエリを実行する方法 TableAdapter クエリは アプリケーションがデータベースに対して実行出来る SQL ステートメントやストアドプロシージャで TableAdapter で型指定されたメソッドと仕て公開される TableAdapter クエリは 所有るオブジェクトのメソッドと同様に 関連付けられたメソッドを呼び出す事に依り実行出来る TableAdapter

More information

データベースⅢ

データベースⅢ データベース操作プログラム Ⅲ C# 2005 20 プログラムの概要 ACCESS 等のデータベースの操作に不慣れな者でも 簡単に使用する事が出来るようなデータベースアプリケーションを目指します 今回は データグリッドをクリックする事に依り 其のレコードのフィールドデータを個別にテキストボックスやコンボボックスに表示するを付加する 此の際 カテゴリ ID や著者 ID の様に人間に解り難いデータ形式では無く

More information

C# bit 環境用 C# 2005 基礎 Ⅱ 電脳梁山泊烏賊塾 データベース操作プログラム Ⅰ C# プログラムの概要 データベースプログラムを手軽に作成する方法としては Access のフォーム機能を用いる事が 先ず考えられます ウィザードも充実しており 操作を覚

C# bit 環境用 C# 2005 基礎 Ⅱ 電脳梁山泊烏賊塾 データベース操作プログラム Ⅰ C# プログラムの概要 データベースプログラムを手軽に作成する方法としては Access のフォーム機能を用いる事が 先ず考えられます ウィザードも充実しており 操作を覚 データベース操作プログラム Ⅰ C# 2005 8 プログラムの概要 データベースプログラムを手軽に作成する方法としては Access のフォーム機能を用いる事が 先ず考えられます ウィザードも充実しており 操作を覚えれば簡単に作成する事が出来ます 其れでは VB でデータベースプログラムを作るメリットは何んでしょうか 1 つは Access のフォーム機能に比べ コントロールが充実している事 より自由なデザインが可能です

More information

目次 更新履歴... 1 はじめに... 3 レコードセット?... 3 準備... 5 SQL でデータを取得する... 6 データのループ処理... 7 列の値を取得する... 7 対象行を変更する (MoveFirst, MoveNext, MovePrevious, MoveLast)...

目次 更新履歴... 1 はじめに... 3 レコードセット?... 3 準備... 5 SQL でデータを取得する... 6 データのループ処理... 7 列の値を取得する... 7 対象行を変更する (MoveFirst, MoveNext, MovePrevious, MoveLast)... レコードセット (ADODB.Recordset) の使い方 作成日 : 2018/02/05 作成者 : 西村 更新履歴 更新日 更新概要 作業者 2018/02/05 新規作成 西村 1 目次 更新履歴... 1 はじめに... 3 レコードセット?... 3 準備... 5 SQL でデータを取得する... 6 データのループ処理... 7 列の値を取得する... 7 対象行を変更する (MoveFirst,

More information

ファイル操作

ファイル操作 ファイル操作 TextFieldParser オブジェクト ストリームの読込と書込 Microsoft.VisualBasic.FileIO 名前空間の TextFieldParser オブジェクトは 構造化テキストファイルの解析に使用するメソッドとプロパティを備えたオブジェクトで有る テキストファイルを TextFieldParser で解析するのは テキストファイルを反復処理するのと同じで有り

More information

VB実用③ アクセス操作Ⅰ

VB実用③ アクセス操作Ⅰ VB でアクセス操作 Ⅰ VB 2005 3 プログラムの概要 此処では コントロールを使用しないで コードに依るデータベースへの接続とデータの取得の方法を学ぶ コントロールに依るデータベース接続は 簡単にデータベースを操作する事が出来ると謂う利点が有り 小規模な運用で有れば 充分な能力を発揮する 併し 中規模 大規模に成り 複雑な操作を必要とする様に成れば 力不足に成る可能性が高く成る 然う成れば

More information

Microsoft Office操作

Microsoft Office操作 VB から ADO を利用して EXCEL の操作 概要 此の資料では Excel ワークシートをデータソースとして ActiveX オブジェクト (ADO) を使用する方法を説明して居る 亦 Excel 固有の構文上の問題や制限事項に付いても解説する 此の資料では OLAP やピボットテーブルテクノロジ 其の他の Excel データの特殊な使用法に付いては扱わない Excel ワークシートの行 及び

More information

mySQLの利用

mySQLの利用 MySQL の利用 インストール インストール時に特に注意点は無い 本稿記述時のバージョンは 6.5.4 で有る (2017 年 11 月現在では 6.10.4 で https://dev.mysql.com/downloads/connector/net/6.10.html よりダウンロード出来る ) 参照設定 インストールが終了すれば Visual Studio で参照の設定を行う 参照の設定画面で

More information

VB実用⑦ エクセル操作Ⅰ

VB実用⑦ エクセル操作Ⅰ VB でエクセル操作 Ⅰ VB 2005 7 プログラムの概要 事務処理に於いて Microsoft 社のスプレッドシートソフトで有るエクセルは データベースソフトで有るアクセスと共に 業界標準 (De Facto Standard) で有ると謂う事が出来る 此処では 其のエクセルを Visual Basic から操作する方法を 重点的に学ぶ 今回は Visual Basic でエクセルを利用する基本と成るオブジェクト生成と

More information

VB実用Ⅲ⑩ フリーデータベースⅡ

VB実用Ⅲ⑩ フリーデータベースⅡ MySQL の利用 MySQL の ODBC(MyODBC) テキストでは MySQL Connector/ODBC(mysql-connector-odbc-3.51.14-win32.msi) をインストールした場合に付いて解説して居るが 此処では MyODBC(MyODBC-3.51.10-x86-win-32bit.msi) をインストールし myodbc-3.51.06-conv_ujis.zip

More information

データベース1

データベース1 データベース操作プログラム Ⅰ VB8 プログラムの概要 データベースプログラムを手軽に作成する方法としては Access のフォーム機能を用いる事が 先ず考えられます ウィザードも充実しており 操作を覚えれば簡単に作成する事が出来ます 其れでは VB でデータベースプログラムを作るメリットは何んでしょうか 1 つは Access のフォーム機能に比べ コントロールが充実している事 より自由なデザインが可能です

More information

Microsoft Office操作(EXCEL)

Microsoft Office操作(EXCEL) VB から Excel にデータを転送する方法 概要 此の資料では Microsoft Visual Basic アプリケーションから Microsoft Excel にデータを転送する様々な方法に付いて説明する 亦 最適なソリューションの選択に役立つ様に 夫々れの方法の長所と短所に付いても説明する 詳細 Excel ブックにデータを転送するのに最も良く使用されるのは オートメーションと呼ばれる技法で有る

More information

ルーレットプログラム

ルーレットプログラム ルーレットプログラム VB 2005 4 プログラムの概要 カジノの代表的なゲーム ルーレット を作成する 先ず GO! ボタンをクリックすると ルーレット盤上をボールが回転し 一定時間経過すると ボールが止まり 出目を表示するプログラムを作成する 出目を 1~16 大小 偶数奇数の内から予想して 予め設定した持ち点の範囲内で賭け点を決め 賭け点と出目に依り 1 点賭けの場合は 16 倍 其他は 2

More information

ファイル操作-インターネットキャッシュ

ファイル操作-インターネットキャッシュ ファイル操作 インターネット一時ファイルの保存場所 インターネットキャッシュ インターネット一時ファイルの保存場所は Internet Explorer の場合 下記の手順で確認する事が出来る 1.[ ツール ] [ インターネットオプション ] でインターネットオプション画面のダイアログを表示させる 2.[ 全般 ] タブで [ インターネット一時ファイル ] グループの [ 設定 ] をクリックすると

More information

グラフィックス

グラフィックス グラフィックス PictureBox の Image プロパティに関する良く有る勘違い PictureBox に画像を表示する方法と仕て PictureBox の Image プロパティを使う方法と Graphics の DrawImage メソッドを使う方法が有るが 此の 2 つの方法を混同し 正しく理解して居ない事が多い様で有る 例えば 下記に列挙する様な状況が 此れに該当する 1.PictureBox

More information

正規表現応用

正規表現応用 正規表現 正規表現を使って文字列が或る形式と一致するか調べる 指定された正規表現のパターンと一致する対象が入力文字列内で見付かるか何うかを調べるには Regex クラスの IsMatch メソッドを使用する 此処では IsMatch メソッドを使った例を幾つか紹介する 猶 正規表現のパターンと一致する個所を探し 見付かれば 其の箇所を抽出する方法は 正規表現を使って文字列を検索し 抽出する で紹介して居る

More information

Userコントロール

Userコントロール User コントロール 初めてのユーザーコントロールの作成 作成したクラスは他のプログラムで再利用出来る為 同じコードを何度も繰り返し作成する必要が無い コントロールも 複数のプロジェクトで再利用出来るクラスで有る 同じユーザーインターフェイスを何度も繰り返してデザインすると謂う経験は 恐らく誰でも有る 例えば 姓と名を入力する為の TextBox コントロールを追加した後で 両方を組み合わせてフルネームを作成するコードを追加する等の作業で有る

More information

NotifyIconコントロール

NotifyIconコントロール NotifyIcon コントロール システムトレイ ( タスクトレイ ) にアイコンを表示する.NET Framework 2.0 以降の場合は 後述の 2 を観て欲しい Outlook や MSN Messenger 等の様に Windows アプリケーションではシステムトレイ ( タスクトレイ ステータス領域等とも呼ばれる ) にアイコンを表示して アプリケーションの状態を示したり アプリケーションのフォームを表示したりする為のショートカットとして利用する事が出来る.NET

More information

VB実用⑯ 印刷Ⅵ(Excel)

VB実用⑯ 印刷Ⅵ(Excel) 印刷 Ⅴ VB 2005 5 プログラムの概要 事務処理に於いて 集計結果等を印刷して 確認等を行う事も多い為 ペーパーレスオフィスが推奨される昨今に於いても 矢張り印刷に関する技術は必要で有る Visual Basic から印刷を行う方法は.NET 以降 PrintDocument オブジェクトを使用する方法が 標準と仕て一般的で有るが Professional 版等では ReportView や

More information

ICONファイルフォーマット

ICONファイルフォーマット グラフィックス 画像フォーマットエンコーダパラメータ 様々なフォーマットで画像を保存 Bitmap クラスを用いる事でビットマップ JPEG GIF PNG 等様々なフォーマットの画像を読み込み操作する事が出来る 更に Bitmap クラスや Graphics コンテナを用いて描画処理等を施したイメージをファイルに保存する事も出来る 此の時 読み込めるフォーマット同様に保存するフォーマットを選択する事が出来る

More information

VB実用Ⅲ③ ADOでXML操作

VB実用Ⅲ③ ADOでXML操作 ADO で XML 操作 VB オートメーション 3 プログラムの概要 インターネットの普及 企業間の取引 (B to B) の拡大を背景に 一対多の電子商取引に加えて 多対多のマーケットプレイス等の動きが急進展して居る状況に於いて 異なる情報システム間での情報交換が円滑 且つ 容易に出来る手段が必要とされた 其処で 其の手段と仕て 現在 XML がインターネット上でのデータ交換の基盤技術と仕て広く認識されて居る

More information

VB実用① データベースⅠ

VB実用① データベースⅠ VB でデータベース Ⅰ VB 2005 1 プログラムの概要 データベースプログラムを手軽に作成する方法と仕ては Access のフォーム機能を用いる事が 先ず考えられる ウィザードも充実して居り 操作を覚えれば簡単に作成する事が出来る 其れでは VB でデータベースプログラムを作るメリットは何かと謂えば先ず Access のフォーム機能に比べ コントロールが充実して居り より自由なデザインが可能と謂う事と

More information

Visual Basic 資料 電脳梁山泊烏賊塾 コレクション初期化子 コレクション初期化子 初めに.NET 版の Visual Basic では 其れ迄の Visual Basic 6.0 とは異なり 下記の例の様に変数宣言の構文に 初期値を代入する式が書ける様に成った 其の際 1 の様に単一の値

Visual Basic 資料 電脳梁山泊烏賊塾 コレクション初期化子 コレクション初期化子 初めに.NET 版の Visual Basic では 其れ迄の Visual Basic 6.0 とは異なり 下記の例の様に変数宣言の構文に 初期値を代入する式が書ける様に成った 其の際 1 の様に単一の値 コレクション初期化子 コレクション初期化子 初めに.NET 版の Visual Basic では 其れ迄の Visual Basic 6.0 とは異なり 下記の例の様に変数宣言の構文に 初期値を代入する式が書ける様に成った 其の際 1 の様に単一の値 ( 此処では 10) を代入する丈でなく 2 の配列変数の宣言の様に ブレース { } の中にカンマ区切りで初期値のリストを記述し 配列の各要素に初期値を代入出来る様に成った

More information

VB.NET解説

VB.NET解説 Visual Basic.NET 印刷編 目次 印刷の概要... 2 印刷の流れ... 2 標準の Windows フォーム印刷ジョブの作成... 3 実行時に於ける Windows フォーム印刷オプションの変更... 3 Windows フォームに於ける接続されたプリンタの選択... 4 Windows フォームでのグラフィックスの印刷... 5 Windows フォームでのテキストの印刷...

More information

VB 資料 電脳梁山泊烏賊塾 音声認識 System.Speech の利用 System.Speech に依るディクテーション ( 音声を文字列化 ).NetFramework3.0 以上 (Visual Studio 2010 以降 ) では 標準で System.Speech が用意されて居るの

VB 資料 電脳梁山泊烏賊塾 音声認識 System.Speech の利用 System.Speech に依るディクテーション ( 音声を文字列化 ).NetFramework3.0 以上 (Visual Studio 2010 以降 ) では 標準で System.Speech が用意されて居るの 音声認識 System.Speech の利用 System.Speech に依るディクテーション ( 音声を文字列化 ).NetFramework3.0 以上 (Visual Studio 2010 以降 ) では 標準で System.Speech が用意されて居るので 此れを利用して音声認識を行うサンプルを紹介する 下記の様な Windows フォームアプリケーションを作成する エディタを起動すると

More information

データベースプログラミング

データベースプログラミング データセットとデータテーブル データセット (DataSet) とは何かに付いて 簡単に説明する データセットとは 典型的な.NET の Windows データベースアプリケーションでは データセットを通じてアプリケーションからデータベースにアクセスする データセットとは 簡単に謂うと データベースから取得したレコードをメモリ上に持つ為の入れ物で有る 例えば データベースからレコードを取得し 其れをグリッドコントロールに表示する様な

More information

モグラ叩きプログラム

モグラ叩きプログラム プログラミングの有用性 VB 2005 1 醒めよ!! 遣り度い事を遣るには 先ず 遣らなければ成らない事を遣る! 現に 其の事に気付いて 日々 其の 遣らなければ成らない事 に邁進して居る人間が 居る 寧ろ 其れを愉しんでさえ居る者も居る 然して 着実に 世の中が必要とする技 術を身に付けて行って居る者が居る 併し 何が 遣らなければ成らない事 なのか解らない場合は 現実に対応出来る技術力 を持ち

More information

相性占いプログラム

相性占いプログラム 相性占いプログラム VB 2005 1 プログラムの概要 画面上で 男女夫々れの誕生日の月日と血液型をコンボボックスより選択した後 占うボタンをクリックする 相性とアドバイス & ポイントは 血液型と星座の位置に依り 予め或る占術法に基づき作成されたデータをファイルより読み込んで配列に記憶させ 誕生日と血液型に依り算出された評価値に該当するデータを表示する 猶 必要な入力が行われて居ない場合には 警告音を鳴らして

More information

ファイル操作-バイナリファイル

ファイル操作-バイナリファイル ファイル操作 バイナリ ファイルを読み書きする バイナリファイル ( 即ちテキストファイル以外のファイル ) を読み書きするには FileStream クラス (System.IO 名前空間 ) を利用する FileStream クラスはファイル用のストリームをサポートするクラスで有り Stream クラス (System.IO 名前空間 ) の派生クラスの 1 つで有る 基本的には コンストラクタで指定したファイルのストリームに対して

More information

64bit環境で32bitコンポーネントの利用

64bit環境で32bitコンポーネントの利用 64bit 環境 64bit 環境で 32bit コンポーネントの利用 Windows 7 や 8 の出現で 愈々 64bit 環境も普及し始めて来た 64bit 環境に於いては 64bit 用に最適化された 64bit コンポーネントを使用するのが本筋で有ろうが 64bit 環境に於いても 32bit コンポーネントを使用し度い場合が有る 過去の遺物 ( レガシ ) と仕て切り捨てるのではなく 良い物は良い物と仕て有効利用すると謂う観点から

More information

ブロック パニック

ブロック パニック ブロックパニック VB 2005 9 プログラムの概要 壁が迫り来る不思議な空間のオリジナルゲーム ブロックパニック を作成する スタートボタンをクリックし上下左右の矢印キーで白猿を移動させる スペースキーを押すと 向いて居る方向の壁が後退する 左右の壁が合わさると ゲームは終了する 一般的に 実用プログラムに比較するとゲームプログラムは 高度なテクニックを要求される事が多い 此処では ゲームプログラムを作成する事に依り

More information

内容 Visual Studio サーバーエクスプローラで学ぶ SQL とデータベース操作... 1 サーバーエクスプローラ... 4 データ接続... 4 データベース操作のサブメニューコンテキスト... 5 データベースのプロパティ... 6 SQL Server... 6 Microsoft

内容 Visual Studio サーバーエクスプローラで学ぶ SQL とデータベース操作... 1 サーバーエクスプローラ... 4 データ接続... 4 データベース操作のサブメニューコンテキスト... 5 データベースのプロパティ... 6 SQL Server... 6 Microsoft Visual Studio サーバーエクスプローラで学ぶ SQL とデータベース操作 Access 2007 と SQL Server Express を使用 SQL 文は SQL Server 主体で解説 Access 版ノースウィンドウデータベースを使用 DBMS プログラム サーバーエクスプローラ SQL 文 実行結果 データベース エンジン データベース SQL 文とは 1 度のコマンドで必要なデータを効率よく取得するための技術といえます

More information

ListViewコントロール

ListViewコントロール ListView コントロール ListView コントロールへ項目を追加 本稿では.NET Framework の標準コントロールで有る ListView コントロール (System.Windows.Forms 名前空間 ) を活用する為に ListView コントロールにデータを追加する方法を紹介する ListView コントロールは データ項目をアイコン表示や詳細表示等に依り一覧表示する為の物で

More information

VB実用Ⅲ⑩ フリーデータベースⅡ

VB実用Ⅲ⑩ フリーデータベースⅡ フリーデータベース Ⅱ VB オートメーション 10 プログラムの概要 事務処理に於いて Microsoft Office は 業界標準 (De Facto Standard) で有ると謂う事が出来る 此の Office には データベースソフトと仕て Access が用意されて居り 現在では データベースの代名詞とも謂う可き存在で有る 古くは MS-DOS 時代に 桐 と謂うデータベースが存在したが

More information

VB実用④ アクセス操作Ⅱ

VB実用④ アクセス操作Ⅱ VB でアクセス操作 Ⅱ VB 2005 4 プログラムの概要 前回に引き続き 此処では コードに依るデータベースの操作方法を学ぶ コネクションオブジェクトを用いてデータベースと接続し 表形式でデータを表示するデータグリッドビューコントロールにレコードデータを自動的に表示する手法を学ぶ 既に学んだ様にコントロールを連結する事に依り コードレスでデータベース操作が可能で有るが 此処では 着目して居る行

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション No 区分実行版 dbsheetclient2013 リリースノート Project Editor 内容 2012/5/29 現在 管理 V 1 新機能 タスクタイプ 参照ブックを開く (62201) に以下の機能を追加しました 1 オープンしたブックのファイル名出力 指定したセルにオープンした Excel ブックのファイル名 ( パスを含む ) を出力します 2 オープンしたブックの上書き保存を許可する

More information

VB実用⑧ エクセル操作Ⅱ

VB実用⑧ エクセル操作Ⅱ VB でエクセル操作 Ⅱ VB 2005 8 プログラムの概要 事務処理に於いて Microsoft 社のスプレッドシートソフトで有るエクセルは データベースソフトで有るアクセスと共に 業界標準 ( De Facto Standard) で有ると謂う事が出来る 今回は エクセルを Visual Basic から操作する為に 最も基本と成るセルに設定された値の取得を 重点的に学ぶ 前回学んだエクセル操作の為のオブジェクトの生成と

More information

MS Office オートメーション

MS Office オートメーション MS Office オートメーション テキストの CSV 形式での保存 :TransferText( サンプル :TransText) Access のデータを 他のアプリケーションで汎用に使える CSV 形式や Excel で使う時に便利な Excel 形式へのコンバート等に付いて 其の方法を紹介する テキストを CSV 形式で保存すると謂うのは Visual Basic でコーディングしても大した物ではないが

More information

PYTHON 資料 電脳梁山泊烏賊塾 PYTHON 入門 関数とメソッド 関数とメソッド Python には関数 (function) とメソッド (method) が有る モジュール内に def で定義されて居る物が関数 クラス内に def で定義されて居る物がメソッドに成る ( 正確にはクラスが

PYTHON 資料 電脳梁山泊烏賊塾 PYTHON 入門 関数とメソッド 関数とメソッド Python には関数 (function) とメソッド (method) が有る モジュール内に def で定義されて居る物が関数 クラス内に def で定義されて居る物がメソッドに成る ( 正確にはクラスが PYTHON 入門 関数とメソッド 関数とメソッド Python には関数 (function) とメソッド (method) が有る モジュール内に def で定義されて居る物が関数 クラス内に def で定義されて居る物がメソッドに成る ( 正確にはクラスがインスタンス化されてからメソッドに成る ) # 関数 def test_func(): print('call test_func') #

More information

Case 0 sqlcmdi.parameters("?tencode").value = Iidata(0) sqlcmdi.parameters("?tenname").value = Iidata(1) 内容を追加します sqlcmdi.executenonquery() Case Else

Case 0 sqlcmdi.parameters(?tencode).value = Iidata(0) sqlcmdi.parameters(?tenname).value = Iidata(1) 内容を追加します sqlcmdi.executenonquery() Case Else Imports MySql.Data.MySqlClient Imports System.IO Public Class Form1 中間省略 Private Sub コマンドテストCToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles コマンドテストCToolStripMenuItem.Click

More information

構造体

構造体 構造体 Byte 配列 構造体とコピーする方法 構造体とバイト配列の変換を行うには System.Runtime.InteropServices 名前空間をインポートして置くと便利で有る Imports System.Runtime.InteropServices using System.Runtime.InteropServices; 下記の 3 種類の構造体にバイト配列の値を格納した場合に付いて検証する

More information

3D回転体プログラム

3D回転体プログラム 3D 回転体プログラム VB 2005 4 プログラムの概要 入力画面で マウスを用いて 側面より見た平面図を描きます マウスの左ボタンをクリックする事で連続線を描き 右ボタンをクリックすると新しい線を描く事が出来る 側面図が完成すると 回転の基本角度を設定して 確定ボタンをクリックすると 平面図を立体図に座標変換する 各軸の回転角度を設定して 表示ボタンをクリックすると 立体図が表示される 各軸の回転角度を変更して

More information

ExcelVBA

ExcelVBA EXCEL VBA REGLECASSE YU SATO 目次 はじめに 開発タブの表示 拡張子 VBEの起動と初期設定 モジュールの挿入 削除 プロジェクト モジュール プロシージャ 変数の宣言 (Dim) If~Then For~Next 応用 :If~ThenとFor~Next ボタンの作成 最後に Subプロシージャ 基本説明 セルの指定 (Range) 変数とデータ型 (String,Long)

More information

GUIプログラムⅡ

GUIプログラムⅡ GUI プログラム Ⅱ 前回課題の制作例 ファイル名 :awtsave.java import java.awt.*; import java.awt.event.*; public class awtsave extends Frame // Button クラスの宣言 Button btnsave; Label lblcaption1, lblcaption2, lblcaption3; Label

More information

ADO.NETのアーキテクチャ

ADO.NETのアーキテクチャ データベース ADO.NET のアーキテクチャ 従来のデータ処理は 主に接続をベースとした 2 層モデルに基づいて居た 最近のデータ処理では 多階層アーキテクチャが多用される様に成った為 プログラマは 非接続型アプローチへと切り替えて アプリケーションに より優れたスケーラビリティを提供して居る ADO.NET のコンポーネント ADO.NET には データへのアクセスとデータの操作に使用出来るコンポーネントが

More information

Microsoft Word _VBAProg1.docx

Microsoft Word _VBAProg1.docx 1. VBA とマクロ 1.1 VBA とは VBA(Visual Basic for Applications) は 1997 年に Microsoft 社がマクロを作成するために開発された言語である Windows 対応のアプリケーションを開発するためのプログラミング言語 Visual Basic をもとにしているため 次のような特徴がある 1 VBA は Excel Word, Access,

More information

ファイル監視

ファイル監視 ファイル操作 ファイルやディレクトリの監視 FileSystemWatcher クラス.NET Framework のクラスライブラリには ファイルやディレクトリの作成 変更 削除を監視する為の FileSystemWatcher クラスが System.IO 名前空間に用意されて居る ( 但し Windows 98/Me では利用出来ない ) 此れを利用すると 特定のディレクトリにファイルが作成された

More information

テスト 1/7 ページ プレポスト Visual Studio による Windows アプリの開発 ( 基礎編 ) 受講日程受講番号氏名 1.NET Framework に関する記述で 誤っているものを選びなさい 1..NET Framework に含まれる CLR は プログラミング言語に依存し

テスト 1/7 ページ プレポスト Visual Studio による Windows アプリの開発 ( 基礎編 ) 受講日程受講番号氏名 1.NET Framework に関する記述で 誤っているものを選びなさい 1..NET Framework に含まれる CLR は プログラミング言語に依存し 1/7 ページ プレポスト Visual Studio による Windows アプリの開発 ( 基礎編 ) 受講日程受講番号氏名 1.NET Framework に関する記述で 誤っているものを選びなさい 1..NET Framework に含まれる CLR は プログラミング言語に依存しない中間言語を実行するための環境である 2..NET Framework に含まれる.NET Framework

More information

With sqlda sqlda に SelectCommand を追加.SelectCommand = New MySqlCommand() With.SelectCommand.CommandType = CommandType.Text.CommandText = "select * from

With sqlda sqlda に SelectCommand を追加.SelectCommand = New MySqlCommand() With.SelectCommand.CommandType = CommandType.Text.CommandText = select * from Imports MySql.Data.MySqlClient Public Class Form1 Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load Label3.Text = "MySQL のデータ表示と更新のテストを行います メニューから行いたい処理を選択して実行してください

More information

プラグイン

プラグイン プラグイン プラグイン詳細 2 ~ プラグイン機能を持つテキストエディタの作成 ~ はじめに Adobe Photoshop や Becky! Internet Mail 等のアプリケーションでは プラグイン ( 又は アドイン エクステンション 等 ) と呼ばれるプログラムをインストールする事に依り 機能を拡張する事が出来る 此の記事では此の様なプラグイン機能を持ったアプリケーションの作り方を プラグイン対応のテキストエディタを作成する事に依り

More information

MS Office オートメーション

MS Office オートメーション MS Office オートメーション Excel マクロのキックに依る印刷 Access では CSV や Excel 形式でのファイル保存が可能で有る 此れ利用して Excel のマクロを装備したシートに読み込んでマクロを実行し 印刷する方法を紹介する 一般的には, 単成るテキストファイルで有る CSV の方が Excel 形式ファイルより汎用性が有るが マクロで自動実行した時には が行頭に付いて居るセルを文字列型と仕て認識して仕舞うと謂う問題が発生する為

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション レッスン (1) あるワークシート中のあるセルを指定する Worksheets(" ワークシート名 ").Range(" セル ").Value ( 例 ) Worksheets(" データ収集 ").Range("A2").Value あるワークシートのセルから 別のワークシートのセルへ転記する Worksheets(" シート A").Range(" セル ").Value = Worksheets("

More information

ブロック崩し風テニス

ブロック崩し風テニス ぱっくんフィッシング VB 2005 13 プログラムの概要 パーティゲームとして良く知られた釣りゲームです マウスで釣り糸を操作して 開閉する魚の口に餌を垂らし 魚が餌を咥えると 釣り上げ 籠の中に入れます 直ぐに口を開けて 海に逃れる魚 中々餌を離さず 籠に入らない魚と 色々なバリエーションが楽しめます 一般的に 実用プログラムに比較するとゲームプログラムは 高度なテクニックを要求される事が多い

More information

プロセス間通信

プロセス間通信 プロセス間通信 プロセス間通信 (SendMessage) プロセス間通信とは 同一コンピューター上で起動して居るアプリケーション間でデータを受け渡し度い事は時々有る Framework には リモート処理 と謂う方法でデータの受け渡しを行なう方法が有る 此処では 此の方法では無く 従来の方法の API を使用したプロセス間通信を紹介する 此の方法は 送信側は API の SendMessage で送り

More information

回文作成支援プログラム

回文作成支援プログラム 回文作成支援プログラム VB 2005 2 プログラムの概要 原文を 1 字入力する度に 其の回文が順次表示される 即ち AB と入力すると ABA と表示され ABC と入力すると ABCBA と表示される 亦 消去ボタンをクリックすると 原文 及び 回文を消去する事も出来る 終了ボタンをクリックすると プログラムをメモリから消去して終了する 今回の課題項目 単純変数の宣言 (Dim) Windows

More information

回文作成支援プログラム

回文作成支援プログラム 回文作成支援プログラム VB1 プログラムの概要 原文を 1 字入力する度に 其の回文が順次表示される 即ち AB と入力すると ABA と表示され ABC と入力すると ABCBA と表示される 亦 消去ボタンをクリックすると 原文 及び 回文を消去する事も出来る 終了ボタンをクリックすると プログラムをメモリから消去して終了する 今回の課題項目 単純変数の宣言 (Dim) 標準コントロールの利用

More information

相性占いプログラム

相性占いプログラム 相性占いプログラム VB1 プログラムの概要 画面上で 男女夫々れの誕生日の月日と血液型をコンボボックスより選択した後 占うボタンをクリックします 相性とアドバイス & ポイントは 血液型と星座の位置に依り 予め或る占術法に基づき作成されたデータをファイルより読み込んで配列に記憶させ 誕生日と血液型に依り算出された評価値に該当するデータを表示します 猶 必要な入力が行われて居ない場合には 警告音を鳴らして

More information

画像閲覧プログラム

画像閲覧プログラム 画像閲覧プログラム VB 2005 3 プログラムの概要 連動するドライブリストボックス ディレクトリリストボックス ファイルリストボックスから画像ファイルを選択してクリックします ピクチャーボックスに選択した画像が実物大で表示される 此の時 画像が表示領域より大きい場合は 画像の大きさに応じてスクロールバーが表示される 此のスクロールバーを操作する事に依り 画像全体を見る事が出来る 終了ボタンをクリックすると

More information

ハッシュテーブル

ハッシュテーブル ハッシュテーブル ハッシュテーブル ( 連想配列 ) を使う ハッシュテーブルとは キー (key) と値 (value) のペアを保持して居るコレクションで有る 通常の配列がインデックス番号に依り各値 ( 各要素 ) にアクセス出来るのに比べて ハッシュテーブルでは インデックス番号の代わりにキーを用いて 其の各値にアクセスする事が出来る キーと 其のキーから連想される ( 対応付けられて居る )

More information

( 目次 ) 1. はじめに 開発環境の準備 仮想ディレクトリーの作成 ASP.NET のWeb アプリケーション開発環境準備 データベースの作成 データベースの追加 テーブルの作成

( 目次 ) 1. はじめに 開発環境の準備 仮想ディレクトリーの作成 ASP.NET のWeb アプリケーション開発環境準備 データベースの作成 データベースの追加 テーブルの作成 KDDI ホスティングサービス (G120, G200) ブック ASP.NET 利用ガイド ( ご参考資料 ) rev.1.0 KDDI 株式会社 1 ( 目次 ) 1. はじめに... 3 2. 開発環境の準備... 3 2.1 仮想ディレクトリーの作成... 3 2.2 ASP.NET のWeb アプリケーション開発環境準備... 7 3. データベースの作成...10 3.1 データベースの追加...10

More information

Prog2_12th

Prog2_12th 2018 年 12 月 13 日 ( 木 ) 実施クラスの継承オブジェクト指向プログラミングの基本的な属性として, 親クラスのメンバを再利用, 拡張, または変更する子クラスを定義することが出来る メンバの再利用を継承と呼び, 継承元となるクラスを基底クラスと呼ぶ また, 基底クラスのメンバを継承するクラスを, 派生クラスと呼ぶ なお, メンバの中でコンストラクタは継承されない C# 言語では,Java

More information

データベースアクセス

データベースアクセス データベースアクセスコンポーネント 1. 概要 データベースアクセスコンポーネントとは SQL データベースにアクセスして SQL 文を実行することによりデータベース検索を行う機能を提供するコンポーネントです また データベースアクセスコンポーネントでは データベースの構成情報 接続情報 エラー情報等を取得することも可能です データベースアクセスコンポーネントは アプリケーションビルダーのメニューから以下のように選びます

More information

VFD256 サンプルプログラム

VFD256 サンプルプログラム VFD256 サンプルプログラム 目次 1 制御プログラム... 1 2.Net 用コントロール Vfd256 の使い方... 11 2.1 表示文字列の設定... 11 2.2 VFD256 書込み前のクリア処理... 11 2.3 書き出しモード... 11 2.4 表示モード... 12 2.5 表示... 13 2.6 クリア... 13 2.7 接続方法 ボーレートの設定... 13 2.8

More information

プレポスト【問題】

プレポスト【問題】 コース名 : 基礎から学ぶ!Excel VBA による業務の自動化 受講日 氏名 1 Excel VBA を使用するメリットとして誤っているものを 1 つ選びなさい 1. 手作業では手間のかかる作業も プログラムに記述した処理は一括して実行されるため 何段階ものメニュー操作を行う必要がなくなる 2. プログラムに書いた処理は記述どおりに実行されるため だれがいつ何回行っても確実な処理がなされ 誤動作を防ぐことができる

More information

インベーダープログラム

インベーダープログラム インベーダーゲーム VB 2005 5 プログラムの概要 テレビゲームの流行の魁と成る懐かしのゲーム インベーダー を作成する 先ず FIGHT!! ボタンをクリックすると インベーダーが左右に移動し乍ら 降下して来るので 自機を左右のカーソルキーで移動させ スペースキーでミサイルを発射する インベーダーが 最終ライン迄 降下して 侵略される前に 総てのインベーダーを撃墜しなければ ゲームは終了する

More information

Section1_入力用テンプレートの作成

Section1_入力用テンプレートの作成 入力用テンプレートの作成 1 Excel には 効率よく かつ正確にデータを入力するための機能が用意されています このセクションでは ユーザー設定リストや入力規則 関数を利用した入力用テンプレートの作成やワークシート操作について学習します STEP 1 ユーザー設定リスト 支店名や商品名など 頻繁に利用するユーザー独自の連続データがある場合には ユーザー設定リスト に登録しておけば オートフィル機能で入力することができ便利です

More information

Base によるアプリケーション開発とサポート 鎌滝雅久 /OpenOffice.org 日本ユーザー会 OSC2007 Hokkaido 2007 年 6 月 30 日土曜日 10:55-11:40 北海道大学学術交流会館第 4 会議室

Base によるアプリケーション開発とサポート 鎌滝雅久 /OpenOffice.org 日本ユーザー会 OSC2007 Hokkaido 2007 年 6 月 30 日土曜日 10:55-11:40 北海道大学学術交流会館第 4 会議室 Base によるアプリケーション開発とサポート 鎌滝雅久 /OpenOffice.org 日本ユーザー会 OSC2007 Hokkaido 2007 年 6 月 30 日土曜日 10:55-11:40 北海道大学学術交流会館第 4 会議室 本日の予定 デモ ( どこでもPDF/ 見積書作成 ) Basicでプログラム~Visual Studioはいらない? Microsoft Officeからの移行

More information

万年暦プログラム

万年暦プログラム 暦カルキュレータ VB8 プログラムの概要 テキストボックスで指定した年月日より オプションボタンで日付が選択されて居る場合は 何年 又は 何箇月 又は 何日 又は 何週後 又は 前の日付を求める 亦 オプションボタンで日数が選択されて居る場合は 更にテキストボックスで指定した年月日迄の日数を求める オプションボタンの選択状況に依り 入力欄の有効 無効を切り替えると共に コマンドボタンのキャプションを書き換えて

More information

Oracle Lite Tutorial

Oracle Lite Tutorial GrapeCity -.NET with GrapeCity - SPREAD Creation Date: Nov. 30, 2005 Last Update: Nov. 30, 2005 Version: 1.0 Document Control Internal Use Only Author Hiroshi Ota Change Logs Date Author Version Change

More information

チャットプログラム

チャットプログラム チャット VB 2005 5 プログラムの概要 Winsock コントロールを使用すると リモートコンピュータに接続し データを交換出来る事を利用して チャット ( 通信雑談システム ) を作成する サーバー クライアント共に 背景色が黄色のテキストボックスに必要項目を入力し 設定ボタンをクリックすると 通信が確立し チャットを開始する事が出来る 送信用テキストボックスに送信文を入力して送信ボタンをクリックすると

More information

占領双六ゲーム

占領双六ゲーム 占領双六ゲーム VB 2005 9 プログラムの概要 赤と青の 2 者が順番にサイコロを振り 出た目の数だけ駒を進めて行き 停止したマス目を自分の色に塗り潰して 自分の陣地に出来ると謂う 所有る陣取りゲームを作成する マス目は最初に其のマスに停止した方の陣地となり 既に孰れかの色に塗り潰されて居るマスに 後から別の駒が停止しても 陣地の占領者が変わる事は無い 総てのマス目が孰れかの色に塗り潰されゝばゲームは終了し

More information

VB実用⑬ 印刷Ⅲ(PrintFormメソッド)

VB実用⑬ 印刷Ⅲ(PrintFormメソッド) 印刷 Ⅳ VB 2005 4 プログラムの概要 事務処理に於いて 集計結果等を印刷して 確認等を行う事も多い為 ペーパーレスオフィスが推奨される昨今に於いても 矢張り印刷に関する技術は必要で有る Visual Basic から印刷を行う方法は.NET 以降 PrintDocument オブジェクトを使用する方法が 標準機能と仕て一般的で有るが Professional 版等では ReportView

More information

第 2 章 PL/SQL の基本記述 この章では PL/SQL プログラムの基本的な記述方法について説明します 1. 宣言部 2. 実行部 3. 例外処理部

第 2 章 PL/SQL の基本記述 この章では PL/SQL プログラムの基本的な記述方法について説明します 1. 宣言部 2. 実行部 3. 例外処理部 はじめに コース概要と目的 Oracle 独自の手続き型言語である PL/SQL について説明します PL/SQL の基本構文 ストアド サブプログラム トリガーの作成方法 またストアド サブプログラムの管理について習得することを目的としています 受講対象者 これから PL/SQL を使用してアプリケーション開発をされる方 前提条件 SQL トレーニング コースを受講された方 もしくは 同等の知識をお持ちの方

More information

sinfI2005_VBA.doc

sinfI2005_VBA.doc sinfi2005_vba.doc MS-ExcelVBA 基礎 (Visual Basic for Application). 主な仕様一覧 () データ型 主なもの 型 型名 型宣言文字 長さ 内容 整数型 Integer % 2 バイト -32,768 32,767 長整数型 Long & 4 バイト -2,47,483,648 2,47,483,647 単精度浮動小数点数 Single 型!

More information

Oracle Lite Tutorial

Oracle Lite Tutorial GrapeCity -.NET with GrapeCity - FlexGrid Creation Date: Nov. 30, 2005 Last Update: Nov. 30, 2005 Version: 1.0 Document Control Internal Use Only Author Hiroshi Ota Change Logs Date Author Version Change

More information

Access研修テキスト

Access研修テキスト テーブル テーブルとは? テーブル は 入力されたデータが保存されるところで データベースにとってもっとも重要な部分です 1 つのテーブルは 同一の性質をもったデータ群から構成されます 複数のテーブルを結合して組み合わせたり テーブルのデータを画面や帳票として出力したり データベースの基礎となる中心的な存在がこの テーブル です テーブルの画面構成とレコード操作 テーブルの表示 データベースウィンドウの

More information

ご存知ですか? データ転送

ご存知ですか? データ転送 ご存知ですか? データ転送 System i のデータベースを PC にダウンロード System i 上のデータベースからデータを PC にダウンロードできます テキスト形式や CSV Excel(BIFF) 形式などに変換可能 System i データベースへのアップロードも可能 必要なライセンスプログラムは iseries Access for Windows(5722-XE1) または PCOMM

More information

Microsoft Word - JDBC-ODBCu691cu8a3c docx

Microsoft Word - JDBC-ODBCu691cu8a3c docx ASTERIA WARP 4.9/1703 でのサードパーティ製 JDBC-ODBC ブリッジドライバー動作検証報告書 2017 年 7 インフォテリア株式会社 本書は著作権法により保護されています インフォテリア株式会社による事前の許可無く 本書のいかなる部分も無断転載 複製 複写を禁じます 本書の内容は予告無しに変更する事があります Infoteria インフォテリア ASTERIA WARP

More information

構造体

構造体 構造体 構造体を取り扱うには System.Runtime.InteropServices 名前空間をインポートして置くと便利で有る Imports System.Runtime.InteropServices using System.Runtime.InteropServices; C# ユーザー定義型 (Type) と構造体 (Structure) 6.0 のユーザー定義型 (Type) を.NET

More information

各種パスワードについて マイナンバー管理票では 3 種のパスワードを使用します (1) 読み取りパスワード Excel 機能の読み取りパスワードです 任意に設定可能です (2) 管理者パスワード マイナンバー管理表 の管理者のパスワードです 管理者パスワード はパスワードの流出を防ぐ目的で この操作

各種パスワードについて マイナンバー管理票では 3 種のパスワードを使用します (1) 読み取りパスワード Excel 機能の読み取りパスワードです 任意に設定可能です (2) 管理者パスワード マイナンバー管理表 の管理者のパスワードです 管理者パスワード はパスワードの流出を防ぐ目的で この操作 マイナンバー管理表 操作説明書 管理者用 2015 年 11 月 30 日 ( 初版 ) 概要 マイナンバー管理表 の動作環境は以下の通りです 対象 OS バージョン Windows7 Windows8 Windows8.1 Windows10 対象 Excel バージョン Excel2010 Excel2013 対象ファイル形式 Microsoft Excel マクロ有効ワークシート (.xlsm)

More information

Microsoft Word - Android_SQLite講座_画面800×1280

Microsoft Word - Android_SQLite講座_画面800×1280 Page 24 11 SQLite の概要 Android にはリレーショナルデータベースである SQLite が標準で掲載されています リレーショナルデータベースは データを表の形で扱うことができるデータベースです リレーショナルデータベースには SQL と呼ばれる言語によって簡単にデータの操作や問い合わせができようになっています SQLite は クライアントサーバ形式ではなく端末の中で処理が完結します

More information

XMLプログラミング(ADO編)

XMLプログラミング(ADO編) XML プログラミング ADO 2.5 と XML ADO 2.5 と XML ADO 2.5 を利用すれば 粗所有るデータソースからのデータの読み取りや ADO レコードセット ( メモリ上にデータを持つ仮想テーブルの様な物 ) へのデータの配置 XML へのデータ変換が可能に成る XML に変換したデータをデータストリームに配置すれば ファイルや ADO ASP Response オブジェクト

More information

1.dll の配置場所配布時はプログラムの実行フォルダーへ配置 2. 開発環境での使用 プロジェクトのプロパティーで [USBPIO.dll] を参照追加してください 開発環境 dll ファイルの場所 VB.Net Express Edition 境プロジェクトのフォルダ \bin\release VB.Netebugビルドの場合プロジェクトのフォルダ \bin\debug VB.Net Releaseビルドの場合プロジェクトのフォルダ

More information

ウィンドウ操作 応用

ウィンドウ操作 応用 Win32API 関数 ウィンドウ操作 ウィンドウ名でトップレベルウィンドウ ( 親を持たないウィンドウ ) のハンドルを取得 メモ帳や電卓等のウィンドウ名でトップレベルウィンドウ ( 親を持たないウィンドウ ) のハンドルを取得する方法を 下記に示す Visual Basic Imports System.Runtime.InteropServices Public Class WindowFromWindowName

More information

Microsoft Excel操作

Microsoft Excel操作 Microsoft Excel 操作 Excel ファイルにアクセス リフレクションを利用したレイトバインディングで Excel ファイルを操作 Visual Basic なら CreatObject 関数を使用して 暗黙の遅延バインディングを利用する事に依り 簡単にに実現出来る Excel の操作も C# で実現するには 少し面倒臭い事に成る 事前バインディングでも実装する事も出来るが 事前バインディングだと

More information

VB実用⑤ アクセス操作Ⅲ

VB実用⑤ アクセス操作Ⅲ VB でアクセス操作 Ⅲ VB 2005 5 プログラムの概要 前回に引き続き 此処では コードに依るデータベースの操作方法を学ぶ コネクションオブジェクトを用いてデータベースと接続し 表形式でデータを表示するデータグリッドビューコントロールにレコードデータを自動的に表示する手法を学ぶ 既に学んだ様にコントロールを連結する事に依り コードレスでデータベース操作が可能で有るが 此処では 着目して居る行

More information

VB6互換のファイルの処理

VB6互換のファイルの処理 Visual Basic のランタイム関数を使用したファイルアクセス FileOpen 関数 ファイルを開いて入出力を行う FileOpen(FileNumber, FileName, Mode[, Access[, Share[, RecorLength]]]) 引数 FileNumber は必ず指定する 有効なファイル番号を指定する FreeFile 関数を使用して 使用可能な次のファイル番号を取得する事が出来る

More information

平成 30 年度 プログラミング研修講座 岩手県立総合教育センター

平成 30 年度 プログラミング研修講座 岩手県立総合教育センター 平成 30 年度 プログラミング研修講座 岩手県立総合教育センター 目次第 1 章プログラミングについて 1 ソフトウェアの働き 1 2 プログラミング言語 1 3 主なプログラミング言語の歴史 2 第 2 章 Visual Basic について 1 Visual Basic とは 3 2.NET Framework の環境 3 3 Visual Basic と.NET Framework の関係

More information

PYTHON 資料 電脳梁山泊烏賊塾 PYTHON 入門 文字列 文字列リテラル プログラムの中で文字列を表す方法は幾つか有るが 基本的な方法は下記の 2 種で有る 対象と成る文字の集まりをダブルクオーテーション ( " ) で囲うか シングルクオーテーション ( ' ) で囲う PYTHON3 "

PYTHON 資料 電脳梁山泊烏賊塾 PYTHON 入門 文字列 文字列リテラル プログラムの中で文字列を表す方法は幾つか有るが 基本的な方法は下記の 2 種で有る 対象と成る文字の集まりをダブルクオーテーション (  ) で囲うか シングルクオーテーション ( ' ) で囲う PYTHON3 PYTHON 入門 文字列 文字列リテラル プログラムの中で文字列を表す方法は幾つか有るが 基本的な方法は下記の 2 種で有る 対象と成る文字の集まりをダブルクオーテーション ( " ) で囲うか シングルクオーテーション ( ' ) で囲う " 文字列 " ' 文字列 ' 他のプログラミング言語ではダブルクオーテーションとシングルクオーテーションで囲う場合では エスケープ処理等の扱いが異なる物が多いが

More information

グラフィックス 目次

グラフィックス 目次 WPF チュートリアル WPF デザイナーに依るサイズ変更可能なアプリケーションの作成 Grid コンテナーコントロールと共に GridSplitter コントロールを使用する事に依り 実行時にユーザーに依ってサイズを変更出来るウィンドウレイアウトを作成出来る 例えば 領域に分割されて居る UI を持つアプリケーションで ユーザーが分割線をドラッグする事に依り より多くの内容を見る必要が有る領域を大きくする事が出来る

More information