IT関連

AS400/IBMi からデータを取得 ExcelVBA カラム名COLHDG取得編

投稿日:2018年9月10日 更新日:

注意

これは私の環境下における私の備忘録です。お使いの環境によっては内容が異なる場合があります。システム管理者でない方は絶対にやらないでください。システムにはログが残るものなので、万が一があればクビになるかもしれません。私は何も責任を負いませんのでご了承のうえご覧ください。

 

内容

前回の記事で載せた続きです。テーブルの内容を全件引っ張るだけではつまらないので、カラム名やCOLHDG(注記)も引っ張る方法を載せます。

 

下記が前回のコードです。

 

CopyFromRecordsetという命令でテーブルのレコードを全件バチコーンと張り付けましたが、今回もそれを使います。

1行目にカラム名、2行目にCOLHDGを挿入しようと思いますので、CopyFromRecordsetは3行目を指定して、3行目にレコードを張り付けるようにします。

 

name age birth
名前 年齢 生年月日
田中 29 2018/09/10
渡辺 44 1956/09/10

こんな感じですね。1行目にカラム名、2行目にCOLHDG、3行目以降にレコードです。

 

サンプルコードは、

 

概要は、まずCopyFromRecordsetで3行目の1列目に全レコードの値を張り付けた後に、各カラムの情報を1つ1つ取得して、1行目と2行目に代入していきます。

ただそれだけです。

 

 

変数のネーミングセンスとか気にしないでください。私もネットで得た知識の備忘録なので。

大事なことは

  1. oRstがテーブルのオブジェクト。
  2. oRst.Fields(カラム名もしくは列番号)で、カラムのデータにアクセスできる。
  3. Properties(7)でカラム名、Properties(3)でCOLHDGの値を取得できる

です。Fieldsとか略せるみたいですが、一応正式に書いておきます。

 

oRstがテーブルのデータですが、1行1行取り出す場合は、こんな感じです。

 

Do~Loopをぐるぐる回る間にテーブルのレコードを読んでいくわけですが、MoveNextが行送りの命令です。これを忘れると無限ループしますのでご注意を。

スポンサーリンク




スポンサーリンク




-IT関連
-, ,

執筆者:


comment

Your email address will not be published. Required fields are marked *

関連記事

AS400/IBMi RPG COMP命令

社内プログラムでCOMPを多用しているのがあったので、どういう動きをするのか調べてみた。   試しに

を実行してみた。 フラ …

AS400/IBMi Laravel config設定のschemaについて

備忘録です。   Laravelのdatabase.phpにodbcの設定を入れるが、schemaって何なのか解らなかった。   今みたら設定はしていた。自社の主要なライブラリを指 …

Windows Live Mailのアドレス帳にCSVインポートで文字化け

CSVデータを作ってWindowsLiveMailにインポートしたら文字化けするときがある。   その原因は文字コード。   WindowsLiveMailアドレス帳の文字コードは …

Laravel SQLでWhereをIF文で追加したり外したりしたい

LaravelでSQL文を直で打ちたいときは、コントローラーの冒頭で

を宣言し、   こんな感じでSQL文を書く。 [cra …

WordPress Stinger8で固定ページにAdsense広告を表示する

なんでStringer8を使い出したんだろうか。もう経緯も忘れたが、Adsense広告も簡単に貼れるし、特に不自由はしていない。というかとても便利だ。   トップの画像がいまだにString …

Adsense広告




文字で検索

人気記事

なぜだか人気記事

読んでほしい順に