用語の使い方
エクセルバカ特有の用語法らしい。バカが書いていることはいつもながら意味が通じない(笑)。
LOG
124.211.50.51 [24/Jan/2013:13:33:42] エクセル INSTREV 右橋の文字列を引っ張る
どうやらこの「INSTREV」はInStrRevのことらしい。文字的にいちばん近い。
しかし、この関数は次のようなものである。
参考
ある文字列 (string1) の中から指定された文字列 (string2) を最後の文字位置から検索を開始し、最初に見つかった文字位置 (先頭からその位置までの文字数) を返す文字列処理関数です。
これが「右橋の文字列を引っ張る」などとは「正月の餅」じゃあるまいし、いったい何の関連があるのか、それがよくわからない。「右橋」
は「右端」だとしても、それでも意味は通じない。
重要
プログラミングの素養のないエクセルバカが書いていることは無意味である。
InStr関数の使用例
InStr関数の使用例として次のようなものが出ている。
ある文字列の中から指定した文字列を検索し、最初に見つかった位置を返すというものである。
資料
Dim SearchString, SearchChar, MyPos
SearchString ="XXpXXpXXPXXP"
'検索対象の文字列を定義します。
SearchChar = "P"
'"P" を検索します。
MyPos = Instr(4, SearchString, SearchChar, 1)
'文字単位の比較を位置 4 から開始すると、6 が返されます。
MyPos = Instr(1, SearchString, SearchChar, 0)
'ビット単位の比較を位置 1 から開始すると、9 が返されます。
MyPos = Instr(SearchString, SearchChar)
'既定のビット単位の比較を行います(最後の引数を省略した場合)。
'9 を返します。
MyPos = Instr(1, SearchString, "W")
'0 を返します。
比較の方法
比較の方法についての、「引数 compare」の設定値は次のようになっている。
定数 | 値 | 説明 |
vbUseCompareOption | -1 | Option Compareステートメントの設定を使用して比較を行います。 |
vbBinaryCompare | 0 | バイナリモードの比較を行います。 |
vbTextCompare | 1 | テキストモードの比較を行います。 |
vbDatabaseCompare | 2 | Microsoft Accessの場合のみ有効。データベースに格納されている設定に基づいて比較を行います。 |
なお、引数 compare を省略すると、Option Compareステートメントの設定に応じて比較モードが決まる。
ヘルプのサンプルでは「ビット単位の比較」になっているのに対し、関数説明ヘルプでは「バイナリモードの比較」となって、「ビット単位の比較」という語は出てこない。用語の使い方に統一性がないのである。
さて、「バイナリモード」とはなにか。「Option Compare」ステートメントの項に次のような記述がある。
Option Compare
Option Compareステートメントの設定。
- Binaryモード
Option Compareのデフォルトの設定である。
文字列比較の並べ替え順序はバイナリ文字コードのコード順によって行われる。
Microsoft Windows版Visual Basicでは文字コードはUnicodeで表現されるので、結果はUnicodeのコード順になる。
- Textモード
文字列比較はオペレーティングシステムの国別情報の設定で決まる。
日本語/日本の場合は、50 音順で、大文字と小文字、文字幅、カタカナとひらがなを区別しない並べ替え順になる。
「バイナリモード」とは、「Binaryモード」で、これは「バイナリ文字コードのコード順」すなわち「Unicodeのコード順」だということである。
ところで、「バイナリ文字コードのコード順」と「文字コードのコード順」とはどう違うのか明確ではない。また、その後では「Unicodeのコード順」と書いてあるが、「バイナリUnicodeのコード順」にはなっていない。
いずれにしても、Microsoftの公定ヘルプでも、「バイナリ」という語の意味がはっきりしないまま使われているのである。
重要
BASIC関係では用語の使い方は本家のMicrosoftでもかなりいい加減である。
いわんやエクセルバカにおいてをや。
下記のようにハチャメチャな用語を書く連中が大量に出てくる原因はMicrosoftの側にもあるのかもしれない。
LOG
210.175.128.69 [10/Nov/2016:10:13:16] VBA SearchString 意味
笑える。
219.215.156.39 [08/Jan/2013:22:28:29] バイト ビット変換 vba
210.138.251.232 [16/Jan/2013:17:40:08] バイナリ csv 変換 ビット
122.29.24.46 [17/Jan/2013:14:30:08] エクセル テキストをバイナリ 変換
210.143.35.16 [17/Jan/2013:15:32:56] Excel バイナリ 文字列変換
まさに、「Microsoftがバカを作る」といっても過言ではない状況である。
- 2013/01/24 -
参考
Microsoftがバカを作る(tpc_0333)
タコの殿堂
Microsoftはこんなバカが増えてくれるほうが都合がいいのよね。
バカを相手に商売することほど簡単に金儲けができる方法はないんだから。