Warning: session_start(): open(/home/var/php/q/v/sess_qvlrueh1rofot7e2d5kppp3fh7, O_RDWR) failed: No such file or directory (2) in /home/users/web07/2/1/0219112/phyokin/devlog/controllers/controller.php on line 15

Warning: session_start(): Failed to read session data: files (path: 2;/home/var/php) in /home/users/web07/2/1/0219112/phyokin/devlog/controllers/controller.php on line 15
devlog
MW211 EXIT

devlog
ExcelVBA/CountIf()で大文字小文字の区別
2017年07月17日
┌──────────────────────────────────────┐
│WorksheetFunction.CountIf(範囲, 値)                                         │
└──────────────────────────────────────┘
上記では、大文字と小文字の区別ができない。

Excel関数なら以下のようにすれば大文字と小文字を区別できる。
┌──────────────────────────────────────┐
│=SUMPRODUCT((EXACT(範囲,値))*1)                                             │
└──────────────────────────────────────┘

しかし、これを、VBAにしようとすると「WorksheetFunction.Exact()」がないので
実装た困難である。

だが、Excel関数を直接実行する「Evaluate()」を使えば実装できなくはない。
┌──────────────────────────────────────┐
│Evaluate("SUMPRODUCT(EXACT(" & 範囲 & "," & Chr(34) & 値 & Chr(34) & ")*1)")│
└──────────────────────────────────────┘
だけど「Evaluate()」は処理速度が遅いのがネックである。

ちなみに範囲の部分は「Selection」だったら「Selection.Address」とかになる。
分類:ExcelVBA