Note that there are some explanatory texts on larger screens.

plurals
  1. POExcel VBA Array - Getting #Value! error when trying to dump array into spreadsheet
    primarykey
    data
    text
    <p>I would be grateful if someone could help me with this code. - Objective: I am trying to populate an array with only the match between the two arrays (one array is the reference data I am looking for in the second array).</p> <p>The code and arrays looks good in the Watches and Locals screens in the developement screen, but when I check the function in the excel spreadsheet it returns a #value! error.</p> <p>Many thanks in advance.</p> <p>Regards rodnei</p> <pre><code>Function FTE_Detail(sref As Range, eref As Range, esource As Range, bplan As Range, eplan As Range) As Variant 'Application.Volatile Dim rreference(34, 0) As String, dumper(150, 6) As String, vsource(17424, 11) As String, k As Integer, j As Integer Dim b As Integer, c As Integer, month As Integer, a As Integer Dim IDNUMBER As Integer, name As String, empID As String, fromCC As String, tocc As String month = Worksheets("Introduction").Cells(7, 6).Value For k = 0 To (eref.Row - sref.Row) rreference(k, 0) = Worksheets("data").Cells(sref.Row + k, sref.Column).Value Next k k = 0 j = 0 For k = 0 To 11 For j = 0 To esource.Row If Len(Worksheets("data").Cells(70 + j, esource.Column + k).Value) &gt; 250 Then vsource(j, k) = Left(Worksheets("data").Cells(70 + j, esource.Column + k).Value, 250) Else vsource(j, k) = Worksheets("data").Cells(70 + j, esource.Column + k).Value End If Next j Next k i = 0 k = 0 j = 0 c = 0 IDNUMBER = 0 'hire array Do While i &lt;= (eref.Row - sref.Row + 1) Do While k &lt;= esource.Row If InStr(vsource(k, month - 2), rreference(i, 0)) Then If vsource(k, month - 3) = "" Then IDNUMBER = IDNUMBER + 1 name = Worksheets("data").Cells(70 + k, 1).Value 'Employee name empID = Worksheets("data").Cells(70 + k, 2).Value 'Employee ID dumper(j, 0) = "hire" dumper(j, 1) = Str(IDNUMBER) dumper(j, 2) = name dumper(j, 3) = Str(empID) dumper(j, 4) = "-" dumper(j, 5) = vsource(k, month - 2) dumper(j, 6) = Worksheets("data").Cells(70 + k, 133).Value 'Employee Country j = j + 1 Else End If Else End If k = k + 1 Loop k = 0 i = i + 1 Loop FTE_Detail = dumper() End Function </code></pre> <ol> <li>First, I select the range <code>GH183:GH215</code></li> <li>Then press <kbd>F2</kbd> and paste the formula <code>=FTE_detail(GG183,GG215,DP17424,'2013PlanfromBex'!P3,'2013PlanfromBex'!P2369)</code></li> <li>Returns <code>#value!</code> in all the cells I selected before.</li> <li>I have done this procedure with other data before and worked. Not sure why is not working in this case.</li> </ol> <p>p.s.: It seems that it builds all the arrays fine in the debug/watches window, only when the functions ends it fails pasting the data from "dumper" to the spreadsheet.</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload