おすすめ本

最近のトラックバック

  • event (夢茶爺&苦茶爺のPC奮戦備忘録)

AccRanking

Ad

カテゴリ「パソコン・インターネット」の83件の記事 Feed

2016年11月 1日 (火)

【VisualBasic6.0】マウスのホイールボタンを使う方法

久々にVB6を動かすことがあったのですが、マウスのホイールボタンには対応していなくて ソースを見るのが「.NET」とは勝手が違いました。

VB6は相当古いソフトなのでマウスのホイールボタンには対応していないのですが、 調べてみると、ホイールボタンに対応するDLLをMicroSoftが提供していました。

■「VB6MouseWheel.exe」ファイルのダウンロード

Microsoft の以下サポートページより、「VB6MouseWheel.EXE パッケージ」をダウンロードします。

http://support.microsoft.com/kb/837910/ja(マイクロソフト サポート オンライン)

■「VB6MouseWheel.exe」ファイルの展開

「VB6MouseWheel.exe」を適当なフォルダにダウンロードし、実行すると以下のファイルが解凍されます。

・EULA.txt
・Main.bas
・VB6IDEMouseWheelAddin.dll
・VB6IDEMouseWheelAddin.vbp
・VBA Mouse Wheel Fix.reg


■「VB6IDEMouseWheelAddin.dll」ファイルのレジストリ登録

「VB6IDEMouseWheelAddin.dll」を適当なフォルダにコピーして、レジストリ登録を行います。
私は、「C:\Program Files (x86)\Microsoft Visual Studio\VB98\」フォルダにコピーしました。
(64bitマシンだったので「x86」ですが)

その後で、Windowsシステムツールの「コマンドプロンプト」を管理者として実行し、ウインドウを開きます。 以下のコマンドを実行して、レジストリ登録を行います。

regsvr32 "C:\Program Files (x86)\Microsoft Visual Studio\VB98\VB6IDEMouseWheelAddin.dll"

■VB6のアドイン設定

VB6 の開発環境を開き、メニューの [アドイン] から [アドインマネージャ] を起動します。
[アドイン マネージャー] ボックスの一覧で、[MouseWheel Fix] を選択し、 [ロード/アンロード] チェックボックスと、[起動時にロード] チェックボックスをオンにします。
最後に「OK」ボタンをクリックし、開発環境を再起動すると、マウスのホイールが使用できるようになります。

Mousewheel



これでやっと、ソースを見るのが少し楽になりました。

デル株式会社


楽天市場

2016年9月23日 (金)

【EXCEL】セルの文字列入力で同一列の複数セルの罫線を引く方法

エクセルの罫線の設定はいちいち面倒なもので、セルに値が入った時に自動で引けないものかと思って 調べたところ、「条件付き書式」で行えるようです。

以下の様に3個の列が在って先頭のA列に何か文字列が入力された場合に、 3列全てのセルの罫線を引く場合を設定してみます。

Ex1



メニューリボンの「ホーム」を選択し、「条件付き書式▼」をクリックし、 「新しいルール(N)...」をクリックします。

Ex2


「新しい書式ルール」のウインドウが表示されますので、 「数式を使用して、書式設定するセルを決定」をクリックします。

Ex3

Ex4


「次の数式を満たす場合に値を書式設定」のところに ”=$A2<>""” を 入力します。

Ex42



その後で、「書式(E)」をクリックし「セルの書式設定」ウインドウが表示されたら、 罫線タブで外枠を描画する様に指定します。

Ex43



「セルの書式設定」が終わった後で、「新しい書式ルール」のウインドウで 「OK」をクリックし登録します。

「条件付き書式▼」の「ルールの管理(R)」から 「条件付き書式ルールの管理」ウインドウを表示します。
「書式ルールの表示」のコンボボックスから”このワークシート”を選択します。

Ex5



先ほど登録したルールが一覧にあると思いますので、 適用先をA列の2行目からC列の1000行目まで ”=$A$2:$C$1000” と設定します。
実際は1000行よりも多くしておいた方がいいかと思います。

Ex51


「条件付き書式ルールの管理」ウインドウで「適用」をクリックすると、 エクセルシートに罫線が以下の様に描画されるはずです。

Ex52_2



この方法での罫線は二重線が描画できないことが難点ではあります。

たった1日で即戦力になるExcelの教科書【電子書籍】[ 吉田拳 ]

価格: 1,922円
(2016/09/29 14:06時点 )

感想:0件


デル株式会社

2016年6月 6日 (月)

ソーシャルブックマーク統合サービス「Add Clips」は終了!

このブログですが最近開くのが遅いと感じていたのですが、原因がわかりました。
ソーシャルブックマーク統合サービスの「Add Clips」を記事に貼っていたのですが、 このサービスが2016年3月31日で終了していました。

以下のスクリプトを貼っていたのですが、早速削除しました。

デル株式会社

2016年4月26日 (火)

ゆうちょ銀行を名乗ったフィッシングメール「登録変更完了のお知らせ」にご注意を!!

今日、なにげにメールソフトの「迷惑メール」フォルダをのぞいたら、 ゆうちょ銀行?から「登録変更完了のお知らせ」なるメールが届いていました。

ゆうちょ銀行から何かあったのかなと思ったのですが、 「迷惑メール」フォルダに入っていたので、ちょっとゆうちょ銀行のサイトを確認しました。

やはりフィッシングメールだそうで、パスワードなどが盗まれる可能性がありますので 絶対にリンクをクリックしない様にしてくださいとのことでした。
メールの内容は以下の様な感じです。 しかし、ほんとに腹立ちますよね。

ゆうちょ銀行

このメールは登録パスワードを変更された方へのメールです。

===============================================
確認のためにメールを送信しています。
お客さまご自身で変更した場合は、このメールを無視しても問題ありません。

お客さまご自身で変更していない場合は盗用の可能性がございます。
至急以下のURLをクリックしてください。
(PC?スマートフォンからご利用ください。)
https://www.jp-bank.japanpost.jp//*****


※このメールアドレスに返信頂きましても、ご返答はできませんので、
お問い合わせはヘルプのサポートフォームよりお願い申し上げます。

URL : https://yucho-moneyguide.jp/otoku/*****

 今後ゆうちょ銀行もをよろしくお願いいたします。

---------------------------------------------------------------
 ゆうちょ銀行について

URL : https://www.jp-bank.japanpost.jp/index.html


デル株式会社

2016年4月 4日 (月)

BHT-BASIC:DENSOのハンディターミナルの開発言語のBHT-BASIC4.0を使ってみた

DENSOのハンディターミナルBHT-1300を使ったシステムを作成することがあったので、 ハンディターミナルの開発言語であるBHT-BASIC4.0についていろいろ載せていきたいと思います。

このBHT-BASIC4.0ですが言語としてはBASICなのですが、 最近のはやりのVisualBasic.NETとは全然違っています。
一言でいえば相当昔のBASICで、言語仕様的には30数年前の NECのPC8001やPC8801などのROM-BASICと呼ばれていたBASICに近いです。 これらのBASICは元々はMicroSoftが開発したBASICを日本のメーカが採用し ROMの中に入れていたものです。 パソコンの電源ONでいきなりBASICが走る感じになっていました。

なので、昔にBASICを触ったことが有る方ならば懐かしい感じで プログラムできるのではないでしょうか。 実際私も、昔を思い出しながら組みました。

昔語りはこの辺にしまして、BHT-BASIC4.0に話を戻します。 BHT-BASIC4.0(以降はBHT-BASICと称します)はハンディターミナルの上で動作させるためなのか、 昔のBASICよりは制約がいろいろあります。 変数の名前の長さであったり、文字列のMAX長であったりそこは ハンディターミナルなのでメモリの制約があると思われます。

それでは今回は初回なので、変数などについて記します。

■BHT-BASICのハンディターミナル内での構成

ハンディターミナルのメモリにはフラッシュメモリとRAMがあり、 フラッシュメモリの中では以下の構成部分からなります。
・システムプログラム
 (BHT-BASICインタプリタ、拡張ライブラリ、拡張関数、システムドライバ等)
・ユーザプログラム
 (ユーザが作成した実行可能なプログラムファイル)
・ユーザデータファイル
 (ユーザプログラムで作成・使用されるデータファイル等)


■BHT-BASICの開発など

・BASICの文法はほぼMicroSoftのBASICと同じです。
・専用のコンパイラ・リンケージエディタで開発します。
・コンパイラ言語なので行番号は不要です。
・実行可能プログラムファイルは中間言語に変換される。
 (ファイル拡張子は PD4 
・開発環境はWindows7,Windows8などの32bitパソコンが必要です。
・実行プログラムをハンディターミナルに転送する通信ユニットが必要です。
 (通信ユニットにはUSBまたはRS-232Cでパソコンと接続)


■BHT-BASICの特徴など

・プログラムの1行は512文字(バイト)
・変数名に使用できるのは、英数字とピリオドのみ
・変数名は大文字と小文字の区別は無く、255文字まで
 (但し、文字列変数を表す $ 、 整数変数を表す % は文字数に含めない)
・変数のデータ型には以下の4種類がある。
データ型 型宣言文字 値の範囲
整数型 % -32,768 ~ 32,767
長整数型 & -2,147,483,648 ~ 2,147,483,647
実数型 無し (ゼロ)0
(正数)0.1000000000E-64 ~ 0.9999999999E+63
(負数)-0.1000000000E-64 ~ -0.9999999999E+63
文字型 $ 0文字 ~ 8192文字

文字列型の文字数のMAXが8192文字(バイト)なのは注意が必要です。 また、文字列型は他にも注意する点があるのですが、それはまた次回に記します。

今回はこの辺りまでで、終わります。
次回は、変数の宣言の仕方や、式の書き方などにします。

転職を本気で考えている方向けのプログラミングスクール!【WebCampPRO】


■関連記事
BHT-BASIC4.0:変数宣言の書き方(BHT-1300)
BHT-BASIC4.0:変数宣言の書き方その2(BHT-1300)
BHT-BASIC4.0:ユーザ定義関数について(BHT-1300)
BHT-BASIC4.0:演算子について(BHT-1300)
BHT-BASIC4.0:画面への表示について(BHT-1300)
BHT-BASIC4.0:キー入力について(BHT-1300)
BHT-BASIC4.0:数値用キー入力関数(ユーザ定義関数)について(BHT-1300)
BHT-BASIC4.0:ユーザ定義関数の値渡し・参照渡しについて(BHT-1300)
BHT-BASIC4.0:文字列を扱うユーザ定義関数について
BHT-BASIC4.0:文字列を扱うユーザ定義関数についてその2
BHT-BASIC4.0:文字列を扱うユーザ定義関数についてその3
BHT-BASIC4.0:TeraTermを使ってDENSOのハンディターミナルにファイル(プログラム)転送を行う方法
BHT-BASIC4.0:I/OポートとWAIT、さらにTIMERについて(BHT-1300)
BHT-BASIC4.0:データファイルの取り扱いについて(BHT-1300)
BHT-BASIC4.0:データファイルの取り扱いについてその2(書込み・読込みの実用的な関数)
BHT-BASIC4.0:データファイルの検索について(SEARCH関数)
BHT-BASIC4.0:ユーザ関数の引数の仮変数に対する代入の注意点
BHT-BASIC4.0:データファイルの削除等について(KILL、CLFILEのラッパ関数)
BHT-BASIC4.0:ファイルの存在確認関数を作ってみました
BHT-BASIC4.0:拡張関数のバイナリサーチ処理関数(BSEARCH.FN3)の使い方
BHT-BASIC4.0:拡張関数のサーチ処理関数(SEARCH.FN3)の使い方
BHT-BASIC4.0:簡単なメニュー表示・選択を行うユーザ関数について
BHT-BASIC4.0:ファイル伝送におけるXFILE命令の使い方
BHT-BASIC4.0:バーコードの読込み(バーコードスキャン)について
BHT-BASIC4.0:Bluetoothデバイスアドレス取得等について
VB.NET:ハンディターミナル(BHT-1300等)とのデータファイルの送受信について


BHT-BASIC4.0BHT用 転送ユーティリティ DLLパック【送料無料・代引手数料無料】【02P05Nov16】

価格: 48,600円
(2016/11/26 21:56時点 )



楽天市場

VB.NET:VisualBasicで役立つ情報が載っているサイト

私自身もプログラムを組んでいて調べ物をするときには、よくGoogleで検索しています。 でもなかなかほしい情報にたどり着くことは難しいものです。 既に先人が解決していて、ネットに載せていればそれを参考にできるのですが。

さて、そんな時に最初に調べるサイトを紹介します。以下のサイトでVisualBasicでの大抵の問題は解決すると思います。

■VBレスキュー(花ちゃん)

http://hanatyan.sakura.ne.jp/

ここは初心者から中級辺りまでの情報が満載です。掲示板もありますので質問もできます。


■DOBON.NET

http://dobon.net/

ここは初心者から上級辺りまでの情報が満載ですし、ソースも完備しています。 掲示板もありますので質問もできます。


■Visual Basic 中学校

http://homepage1.nifty.com/rucio/main/main.htm

このサイトによれば 「対象者はVB初心者。特に小学生、中学生、高校生プログラマを念頭に置いています」 とのことですが、解説はVisualBasicを初めて学ぶ方にとっては非常に分かりやすいと思います。 ここは初心者から中級辺りまでの内容ですが、改めて勉強しなおすには良いサイトです。

■CodeProject

http://www.codeproject.com/

このサイトは英語なのですが、英語だとひるまずに、必要な単語を検索ボックスに入力し検索してみてください。 ほしい情報がヒットするかもしれません。 結構な情報量です。私もたまに利用させてもらっています。
デル株式会社

楽天市場

2016年3月26日 (土)

VB.NET:ADO.NETを使用したSQL-ServerのテーブルのCSV出力

ADO.NET を使用した SQL-Server のテーブルをCSVファイルに出力する簡単な関数を作成してみました。

CSVファイルを作成する関数への引数は、データベース名とデータソース名と、SQL文、それとCSVファイル名とCSV内のカラムヘッダを 出力するかのフラグになります。

CSV出力処理関数内では SQL-Server への接続をオープンし、指定されたSELECT文を実行します。 SELECT文の結果の行が在れば、1行づつデータを取得します。 初回の行の処理の場合には、リーダーオブジェクトからカラム名を取得しヘッダ行を書き込みます。 その後、各データ行をCSVファイルに書き込みます。 CSVの各データは強制的にダブルクォートで囲む様にしていますので、 データ内のダブルクォートはエスケープ処理しています。


尚、今回のテーブルは以下の生成文で生成しました。

結果的にCSVファイル内容は以下の様になります。


■関連記事
BCPコマンドでUnicode文字形式を使用したデータのインポート及びエクスポート(SQL Server)について
ADO.NET での DataReader の入れ子エラー
ADO.NET を使用した SQL-Server へのアクセス・クラス
SQL-Serverの自動採番(IDENTITY値)の取得・リセット
SQL-Serverのストアド・ファンクションではUPDATEなどが実行できない
SQL-Serverのユーティリティ(BCPコマンド)を利用したテーブルへのインポート・エキスポート
SQL-Serverのプロシージャ生成のバッチ実行
SQL-Serverの関数・プロシージャのVB.NETでの実行

デル株式会社

楽天市場

2016年3月25日 (金)

EXCEL:CSVファイル読込で、先頭ゼロのデータをそのまま表示させる方法

エクセルでCSVファイルを読込む場合、先頭がゼロのデータが消されてしまい左寄せの様な表示になります。 例えば電場番号や商品コードなどでは、先頭にゼロが存在することは自然なことなので、 ゼロがサプレスされてしまうと不都合が在ります。

以下の様なCSVファイルをエクセルに読込んでみます。

Test1edit


エクセルの結果はやはり先頭ゼロが在りません。

Test1exl



そこで先頭ゼロのカラムデータは値をダブルコーテーションで囲んで先頭に = イコール)を 置いてやります。 以下の様にCSVファイルを変更してやります。

Test2edit


エクセルの結果は先頭ゼロが表示される様になりました。

Test2exl


上図のセルの値からも分かるように、値が ="0012345" とCSVファイルの値そのものになるので 注意が必要です。これをそのまま印刷しても 0012345 とちゃんと表示されます。

たった1日で即戦力になるExcelの教科書【電子書籍】[ 吉田拳 ]

価格: 1,922円
(2016/09/29 14:06時点 )

感想:0件

楽天市場

2016年3月22日 (火)

VB.NET:コンボボックスへの項目設定、設定値の取り扱うクラスを作成してみました

標準コントロールのコンボボックス(ComboBox)ですが、このコントロールへの設定値は Items で行います。 フォームのデザイナ上でプロパティウインドウの中から設定してもいいのですが、 今回は Items に設定する項目をクラスとして定義し、 それを指定のコンボボックスに設定するクラスを作成してみました。

 Items に設定できるデータ型は Object 型の配列として宣言されていますので、 クラスの値の配列を設定が可能です。

以下のソースでは、全体のクラス名を ClsCombo として宣言し、 コンボの Items に設定されるデータを ComboItem として宣言しています。
このクラスを使用する場合は、 ComboItem で項目値を配列として宣言し、  ClsCombo のコンストラクタに渡す様にします。


■プロパティ

プロパティ名 内容
ComboDivision 選択区分値(数値)を取得
ComboDivString 選択区分値(文字列)を取得
ComboText 選択区分名(Text)を取得


■メソッド

メソッド名 引数 内容
SetComboSeletedIndex 区分値(Long) 区分値を選択状態に設定
SetComboSeletedIndex 区分値(文字列) 区分値を選択状態に設定



このクラスを使う例として以下のソースを示します。

プライベート変数で今回のクラスの変数と、コンボに設定する項目値の配列を宣言します。 その後、フォームロード時イベントでクラス変数の生成を行い、初期選択値を設定します。

Combo1


ボタンクリック時イベントで選択されている区分値とコンボボックスに表示されているテキスト文字列を クラスより取得し表示しています。

Combo2

Visual Basic 2013逆引き大全 555の極意【電子書籍】[ 増田智明 ]

価格: 2,527円
(2016/09/29 14:32時点 )

感想:0件

デル株式会社


楽天市場

2016年3月19日 (土)

VB.NET:プライマリディスプレイの上でフォームの表示位置設定する方法

今回の記事は、パソコンの画面上で、タスクバーを除いた部分でどの位置に表示するかを制御する簡単なTIPSです。
通常パソコンのディスプレイは1台なのでプライマリディスプレイと言えば表示画面そのものですが、 System.Windows.Forms.Screenクラスのプロパティ PrimaryScreen から画面の情報を取得できます。
 PrimaryScreen プロパティはSystem.Windows.Forms.Screenクラスで以下の様なプロパティを持っています。
プロパティ 内容
BitsPerPixel 1 ピクセルのデータに関連付けられているメモリのビット数を取得
Bounds ディスプレイの範囲を取得
WorkingArea ディスプレイの作業領域を取得。作業領域とは、ディスプレイのデスクトップ領域からタスクバー、ドッキングされたウィンドウ、およびドッキングされたツール バーを除いた部分


画面の表示は以下の様になります。 Form1_2
以下の今回のソースを示しますが、画面中央、左上、右上、左下、右下のラジオボタンをクリックし ボタンをクリックすると、指定位置にフォームが移動します。
タスクバーの領域を除いた部分での画面位置ですので、 WorkingArea プロパティを使います。

この例の関数ですが、仕事で普通に使う場合は、画面中央に表示する場合がほとんどでした。
基礎Visual Basic 2015 基礎シリーズ
デル株式会社