ライブラリ

DIFF

アバウトなVLOOKUP

ユーザー定義関数で、
VLOOKUPにDIFFのアルゴリズムを組込んだ、
VlookUpPatient という関数を作成。

基本的には、大文字小文字、半角・全角、ひらがな・カタカナを無視して検索し、
もっとも類似度の高い箇所を見つけ出してくる。

くわしく説明すると、
Mayersのアルゴリズムで、レーベンシュタイン距離(LD)を算出し、
更にLDを標準化して類似度の精度をアップさせ、
同じ精度であれば、大文字小文字等を考慮し、
なるべく精度の高いものを拾ってくるよう調整。

引数については、
数式の挿入ダイアログを表示させ、
関数の分類に「検索/行列」を指定すると
関数名の一番下に該当関数が表示されるので、
選択してOKボタン押下で詳細が表示されます。

DIFF   2019/11/16   shono

Diff

Diff のアルゴリズム (Myers) ※もちろんVBAで実装

差分を計算するというのは次の3つを計算すること
LD (LevenshteinDistance)=編集距離   :2つの要素列の違いを数値化したもの
LCS(Longest Common Subsequence) :2つの要素列の最長共通部分列
SES(Shortest Edit Script)                  :ある要素列を別の要素列に変換するための最短手順

DIFF   2017/06/19   shono