Excel UDF中的公共数组

时间:2015-12-03 16:32:27

标签: excel-vba user-defined-functions vba excel

32Bit Excel 2015 | 64位Win7

我有一个名为LDMod的模块

看起来像这样

Public MyArray()

Function DoinStuff()
if **IDKWhatTOPutHere** MyArray then Call FillMyArray
DoinStuff = "Done"
End Function

Sub FillMyArray
ReDim MyArray(1 to 10, 1 to 10)
For .....
   ....Blah
Next 
End Sub

我的目标是创建并填充公共数组,然后通过函数反复使用它,而不是每次调用函数时为每个单元格重新创建数组。

问题是双重的:

  1. 我不知道如何检查MyArray是否已创建 IDKWhatToPutHere
  2. My Public Array Deceleration不允许我调用变量数组

1 个答案:

答案 0 :(得分:0)

@Alex,我确实决定只使用一个虚拟变量来保存一个布尔值

为了解决更大的问题 - 无法定位我的数组我创建了一个sub dys myims我的数组,然后它只是稍后由另一个sub得到ReDimed - 它不漂亮,但此时功能结束形式。

$tmp = '';
$i = 0;      
    foreach( $_POST as $key => $value)  {
        if( substr( $key, 0, 14) == 'course-select-')   {
            $tmp.= '<tr><td>Day number' . $i . ' :</td><td> ' . $value . '</td></tr>';
        }
    $i++;
};

如果有人想到更好的解决方案,我很乐意在这个功能中加入更多的形式......