メールなどで届くExce、マクロに何が入っているか分からない場合がある。
セキュリティレベルが中以上なら良いが、「VBAを使ったシステムがある」ということで、セキュリティレベルを低にしていた企業があった。中小ではなく東証一部上場企業である。
低になっているとマクロがあったのかどうかさえ分からない。これじゃまずい。

そういう場合、Excelを起動する際にShiftを押しながら起動しよう。

これだけでも被害は小さくなるだろう。


ブログトップへ
ブログ内検索キーワード
 セキュリティレベル セキュリティ

LANコネクタでのデータのやりとりを見てみたい!と思ったことはないだろうか?

まだ各メーカーから8ビット機が乱立していた頃のマシンで、Big-Modem?というパソコン通信のホスト機(今で言うサーバー)で通信プログラムをBASICで作成したことがある(遅くて使い物にならなかった。ログインとメールの受信くらいが・・)。その際、どうやってたか忘れたが、通信回線を通るデータをモニタする機能も作った(確か、デバイスが使いやすかったからかな?と思う)。

で、現在のWindowsパソコンで・・というと、おそらく通信モジュールなどを利用すればいいのだろうけれど、そこまで気合いを入れる気がおきない。ハードウェアとしてモニタする機器もあるようだ。パケットアナライザとか、LANアナライザ、回線モニタとかいうらしい。しかし、お遊びで使うだけなので高そうだし・・

ソフトウェアでそんなものがなかったかな?と記憶をたぐると、Ethereal (イーサリアル)ってのがあったはずだな、と調べたら、今は Wireshark (ワイヤシャーク)という名に変わっているようだ。フリーソフトである。

使い方は慣れが必要だと思うが、興味のある方は。 http://cowscorpion.com/dl/Wireshark.html
メニューバーの[Capture]から選択すればとりあえずは動く。

・イーサネットアダプタ単位にモニターできる。
・VMWareなど仮想的なものに対しても可である。
・必要なものだけを拾うようフィルタリングも可能である。
など、使いやすい。詳細は略すが、結構使いやすいと思う。


ブログトップへ
ブログ内検索キーワード
 ネットワーク  仮想

Option Base というオプションがある。各モジュールの先頭に記載し、配列の開始が0か1かを指定するオプションである。指定しなければ 0 である。

Dim sVal(10) As String という配列の場合
Option Base 0 だと 11 ( 0 ~ 10 ) 個の要素
Option Base 1 だと 10 ( 1 ~ 10 ) 個の要素
となる。

通常、あまり意識しなくてもいいと思うが、使い方はプロジェクトで決めておく必要がある。

以下、私の経験則だが・・。

意識的に Option Base を 1 に設定するのは、データベースとワークシートとのデータのやりとりをする領域に対してである。
通常の場合、データベースから読み込んだデータをセルに貼り付ける場合、いったんVariant型の配列を経由させる。
理由は、読み込んだ内容を未編集でそのまま貼り付けられる場合は少なく、何らかの加工が必要になることが多いのだが、セルに貼り付けてから編集すると「遅い」ので、Variant型の配列に突っ込んで、そこで型変換なりしてから一気に書き込むのだ。ワークシートは列、行とも1から開始するので、Variant型の配列をワークシートの同じように設定しようと思うと、 Option Base を 1 とした方が分かりやすいからだ。

また、Typeなどで確保したエリアは Option Base 0 にしている。配列番号 0 は通常空けておいて、例えばアルゴリズムでソートをする際のスワップ領域にしたり、何らかのしきい値を入れておくのに使う。

ブログトップへ
ブログ内検索キーワード
 Option 配列