モド 汎用の変数コピー
Sub assignVar(ByRef Target As Variant, ByRef source As Variant)
 
Set Target = Source と Let Target = Source の自動ジドウ判定ハンテイ
1番目の引数
Function firstArg(ByRef a As Variant, ByRef b As Variant) As Variant
 
    Function p_firstArg(
    Function p_identity(
 
aカエ返すだけ
2番目の引数
Function secondArg(ByRef a As Variant, ByRef b As Variant) As Variant
 
    Function p_secondArg(
 
bカエ返すだけ
N番目の配列要素取得(絶対アドレス)
Function getNth(ByRef vec As Variant, ByRef index As Variant) As Variant
 
モド     Function p_getNth(
 
?getNth(iota(1, 1000000), 5234)
5235
N番目の配列要素取得(オフセットアドレス)
Function getNth_b(ByRef vec As Variant, ByRef index As Variant) As Variant
 
    Function p_getNth_b(                            ←これの構文糖は p__n(
 
index < 0 の場合は後ろから取得
a = iota(1,10)
changeLBound  a, 16384
printS a
[Dim1]: 16384 -> 16393  : Total Size = 10
? getNth_b(a, 0), getNth_b(a, -1)
 1             10 
N番目の配列要素設定(オフセットアドレス)
モド     index < 0 の場合は後ろに設定
Sub setNth_b(ByRef vec As Variant, ByVal index As Long, ByRef value As Variant)
 
絶対ゼッタイ位置イチ指定シテイする "setNth" は、存在ソンザイ意義イギがない
N番目の配列要素設定:moveバージョン(絶対アドレス)
Function setNth_move(ByRef vec As Variant, ByVal index As Long, ByRef value As Variant)
 
a = iota(1, 1000000)                       ← 大きな配列
a = setNth_move(a, 1002, -1)         ← 1カショえてカエすのも安心アンシン
printM subV(a, iota(1000, 1005))
  1001  1002  -1  1004  1005  1006
N番目の配列要素設定:moveバージョン(オフセットアドレス)
Function setNth_b_move(ByRef vec As Variant, ByVal index As Long, ByRef value As Variant)
複数の変数をmoveしてひとつのジャグ配列にする
Function move_many(ParamArray m() As Variant) As Variant
モド  
イカ下のプロセスで配ハイレツ列のコピーが発ハッセイ生しない
m = move_many(a, b, c, d, e. f. g)           a, b, c, d, e. f. g はオオきな配列ハイレツ
(mをmapFナドワタ渡しナニナニかする・・・)
move_back  m, a, b, c, d, e, f                 a, b, c, d, e. f. g にアタイモド
ジャグ配列から複数(可変長)の変数にmove back
Sub move_back(ByRef m As Variant, ParamArray ret() As Variant)
 
move_many ギャク逆操ソウサ
配列の指定位置に関数を適用する(値を埋めてmoveして返す)
Function place_fill(ByRef vec As Variant, ByRef fun As Variant, ByRef indice As Variant, _
                          Optional ByRef souce As Variant) As Variant
 
a = place_fill(repeat("-",10), p_left("abcdefghijk"), Array(2,5,8))
printM a
  -  -  ab  -  -  abcde  -  -  abcdefgh  -
printM place_fill(repeat(0, 10), 1, Array(2,5,8))
  0  0  1  0  0  1  0  0  1  0
モド  
m = place_fill(iota(0,100), "Fizz", mapF(p_mult(3), iota(1, 33)))
m = place_fill(m, "Buzz", mapF(p_mult(5), iota(1, 20)))
m = place_fill(m, "FizzBuzz", mapF(p_mult(15), iota(1, 6)))
printM m, -100
  1  2  Fizz  4  Buzz  Fizz  7  8  Fizz  Buzz  11  Fizz  13  14  FizzBuzz  16  17  Fizz  19 …
配列の行数
Public Function rowSize(ByRef data As Variant) As Long
配列の列数
Public Function colSize(ByRef data As Variant) As Long
モド
配列の全要素数または特定の軸の要素数
Function sizeof(ByRef data As Variant, Optional ByVal axis As Long = 0) As Long
 
    Public Function p_sizeof(
 
ジスウの上ジョウゲン限なし
axis = 0 : ゼン要素ヨウソスウ
0 < axis <= 次元ジゲン : ゼン指定シテイしたジク要素ヨウソスウ
他 : 1
定数関数  (関数オブジェクトのみ)
Function p_constant(ByRef x As Variant) As Variant
定数関数(true)  (関数オブジェクトのみ)
Function p_true() As Variant
定数関数(false)  (関数オブジェクトのみ)
モド Function p_false() As Variant
選択   if_else(値, [判定値(関数), 真の時の変換値(関数), 偽の時の変換値(関数)])
Function if_else(ByRef val As Variant, ByRef trans As Variant) As Variant
 
    Function p_if_else(
 
プレースホルダ置くと引ヒキスウ数がそのまま反ハンエイ映される
?if_else(335, Array(p_mod(, 3), ph_0, "アホ"))
335
?if_else(300, Array(p_mod(, 3), ph_0, "アホ"))
アホ
Nullを他の値に置換する
Function replaceNull(ByRef x As Variant, ByRef alt As Variant) As Variant
 
    Function p_replaceNull(
モド
Emptyを他の値に置換する
Function replaceEmpty(ByRef x As Variant, ByRef alt As Variant) As Variant
 
    Function p_replaceEmpty(
 
ジョウケン合わないものを Empty に変ヘンカン換しておき、あとで一気イッキに置チカン換するのに利用リヨウできる
値のマスク(mask=0 の時にEmpty化)
Function maskVar(ByRef x As Variant, ByRef mask As Variant) As Variant
 
    Function p_maskVar(
指数関数
Function expN(ByRef a As Variant, ByRef dummy As Variant) As Variant
 
モド     Function p_exp(
対数関数
Function logN(ByRef a As Variant, Optional ByRef base As Variant) As Variant
 
    Function p_log(
絶対値
Function absD(ByRef val As Variant, Optional ByRef dummy As Variant) As Variant
 
    Function p_abs(
加算
Function plus(ByRef a As Variant, ByRef b As Variant) As Variant
 
モド     Function p_plus(
減算
Function minus(ByRef a As Variant, ByRef b As Variant) As Variant
 
    Function p_minus(
乗算
Function mult(ByRef a As Variant, ByRef b As Variant) As Variant
 
    Function p_mult(
除算
Function divide(ByRef a As Variant, ByRef b As Variant) As Variant
 
    Function p_divide(
    
剰余
Function modN(ByRef a As Variant, ByRef b As Variant) As Variant
 
モド     Function p_mod(
多項式 (係数は高次->低次)
Function poly(ByRef x As Variant, ByRef coef As Variant) As Variant
 
    Function p_poly(
min
Function min_fun(ByRef a As Variant, ByRef b As Variant) As Variant
 
    Function p_min(
max
Function max_fun(ByRef a As Variant, ByRef b As Variant) As Variant
 
モド     Function p_max(
    
CLng(整数化)
Function CLng_(ByRef a As Variant, Optional ByRef dummy As Variant) As Variant
 
    Function p_CLng(
CDbl(実数化)
Function CDbl_(ByRef a As Variant, Optional ByRef dummy As Variant) As Variant
 
    Function p_CDbl(
CStr(文字列化)
Function CStr_(ByRef a As Variant, Optional ByRef dummy As Variant) As Variant
 
    Function p_CStr(
Len関数
Function str_len(ByRef st As Variant, Optional ByRef dummy As Variant) As Variant
 
モド     Function p_len(
    
Left関数(負の引数も可)
Function str_left(ByRef st As Variant, ByRef length As Variant) As Variant
 
    Function p_left(
    
Right関数(負の引数も可)
Function str_right(ByRef st As Variant, ByRef length As Variant) As Variant
 
    Function p_right(
    
Mid関数
Function str_mid(ByRef st As Variant, ByRef begin_len As Variant) As Variant
 
モド     Function p_mid(
文字列結合関数
Function str_cat(ByRef s1 As Variant, ByRef s2 As Variant) As Variant
 
    Function p_str_cat(
Split関数
Function splitFun(ByRef s As Variant, ByRef delim As Variant) As Variant
 
    Function p_split(
Join関数
Function joinFun(ByRef m As Variant, ByRef delim As Variant) As Variant
 
モド     Function p_join(
サイショウ小公倍コウバイスウ
Function gcm(ByRef a As Variant, ByRef b As Variant) As Variant
 
    Function p_gcm(
    
最大サイダイ公約数コウヤクスウ
Function lcm(ByRef a As Variant, ByRef b As Variant) As Variant
 
    Function p_lcm(
述語 equal
Function equal(ByRef a As Variant, ByRef b As Variant) As Variant
 
    Function p_equal(
述語 not equal
Function notEqual(ByRef a As Variant, ByRef b As Variant) As Variant
 
モド     Function p_notEqual(
述語 less ( < )
Function less(ByRef a As Variant, ByRef b As Variant) As Variant
 
    Function p_less(
述語 less_equal ( <= )
Function less_equal(ByRef a As Variant, ByRef b As Variant) As Variant
 
    Function p_less_equal(
述語 greater ( > )
Function greater(ByRef a As Variant, ByRef b As Variant) As Variant
 
    Function p_greater(
モド
述語 greater_equal ( >= )
Function greater_equal(ByRef a As Variant, ByRef b As Variant) As Variant
 
    Function p_greater_equal(
述語 is_null
Function is_null(ByRef a As Variant, Optional ByRef dummy As Variant) As Variant
 
    Function p_is_null(Optional ByRef firstParam As Variant, Optional ByRef secondParam As Variant) As Variant
述語 is_empty
Function is_empty(ByRef a As Variant, Optional ByRef dummy As Variant) As Variant
 
    Function p_is_empty(
述語 is_valid
Function is_valid(ByRef a As Variant, Optional ByRef dummy As Variant) As Variant
 
    Function p_is_valid(