goo blog サービス終了のお知らせ 

PG(プログラマー)&SEによる業務に役立つプログラミング知識 

主に仕事で覚えた業務で使えるプログラム、パソコン、ソフトウェア、ハードウェアの知識を提供していくブログです。

VB6 プロジェクト -

2011年01月17日 21時47分51秒 | VB6.0
今日、VB6でプロジェクトのオブジェクト名に

「インターフェース」とつけて保存したら保存しましたとなったので

一度、閉じて開いてみると

「インタフェス」になっているではないか!

で調べてみたら

それが仕様(バグ!?)とのことで日本語名を使ったら予期せぬ動作が起こっても保障しません的なことみたいです。

結論…オブジェクト名とかコントロール名に日本語の名前をつけるのはなるべく避けましょう。

とくに「ー」

ためしに「ーーー」と名前をつけたら、勝手に別の名前がつけられてました。

一体、どういうロジックでこんな結果になっているのかみてみたいですね

Format関数で四捨五入

2010年08月13日 23時04分49秒 | VB6.0
数値の四捨五入がしたい場合は

Format関数で可能です。

例えば、少数三位以下を四捨五入するなら

Format(四捨五入したい変数,"0.00")

で可能です。

ただ、Windowsのバージョンが古いと若干変になる場合があるみたいなので、

注意が必要です。

最新のものでUPDATEしていれば問題ないでしょう

ボタンコントロールのクリックイベントの処理をする

2010年08月10日 21時25分29秒 | VB6.0
VB.NETでは
ボタンコントロール名.PerformClick()
でコード上でクリックボタンイベントの処理を呼び出せます。

VB6.0の場合は
ボタンコントロール名.Value = True
でコード上でクリックボタンイベントの処理を呼び出せます。

ボタンコントロール名.Value = Trueの場合はボタンコントロールのEnableプロパティがFalseの場合でも処理が行われます。

初心者のための変数宣言の意味説明 VB6編

2010年07月22日 23時53分02秒 | VB6.0
変数の方法は

Dim 変数 as 型名

でできます。

変数を宣言する意味は

今から、これだけの領域を使いますよということでメモリを確保する。

これをしてないとすべてVariant型になって、なんでも入れれる代わりに無駄な領域が確保されメモリの無駄使いとなります。

あとは可読性の問題で、いきなり変数があると、どの範囲でどのようにつかわれてるのかがわかりづらい。
ただ、作成者はわかるとは思いますが、それを別の人が修正するとなるとやっかいになります。

最初は数値か文字列かくらいの使い分けを意識すれば充分でしょう。

そして、徐々にこのときはこの型が最適というのは自然にわかってくるものです。

基本的に暗黙的にされる処理も記述することにより、暗黙的でないようにしたほうがどこで処理がされているかわかりやすくなるので、処理は暗黙的にさせるのではなく、ちゃんと記述しましょう。

構造体の配列の解放 Erase

2010年07月14日 22時14分01秒 | VB6.0
VB6.0ではオブジェクトを使い終わった後は解放してやらないといけません。

でないと無駄にメモリを消費してしまいます。

オブジェクトの解放は

Set オブジェクト変数 = Nothing

でいけますが、

構造体配列の場合は

Erase 構造体()

としてやらないといけません。

ちなみに私はErase をEraceと書き間違って、コンパイルできないミスをしてました。

SQLの記述方法

2010年07月01日 21時41分33秒 | VB6.0
VB6.0でSQL文をString型の変数に格納するときにみなさんはどのようにしてますか。

読みやすい書き方があると思うのですが

Dim sSQL as String

sSQL = ""
sSQL = sSQL & " SELECT " & vbCrLf
sSQL = sSQL & " 列名1 " & vbCrLf
sSQL = sSQL & " ,列名2 " & vbCrLf
sSQL = sSQL & " ,列名3 " & vbCrLf
sSQL = sSQL & " ,列名4 " & vbCrLf
sSQL = sSQL & " ,列名5 " & vbCrLf
sSQL = sSQL & " FROM テーブル名 " & vbCrLf
sSQL = sSQL & " WHERE 列名6 = 'TEST' " & vbCrLf
sSQL = sSQL & " AND 列名7 = 'TEST2' " & vbCrLf

ここのブログの都合上、空白スペースがけずれれてしまってますが、基本的には↑の記述で空白スペース埋めてそろえると見やすいです。


Excelのセルの中に改行コード replace

2010年06月26日 08時29分44秒 | VB6.0
Excelのセルに改行コードが入っている場合に、そのセルをテキストボックス内に貼り付け、そこで改行コードを空白に置換する場合
なぜかReplaceでvbCrlfを""に置き換えても改行コードが残っていた。
それをvbCrとVbLfにわけてReplaceすると見事に置換された。なぜ?
ちなみにvbCrlfを"a"に置き換えはできました。