что я пытаюсь сделать: изменить данные таблицы, если значение соответствует пройденным критериям
код:
Sub editTableData(tableName As String, rw As Integer, col As Integer, str As String)
Sheet1.ListObjects(tableName).Range(rw, col).value = str
End Sub
Sub EDITTABLEDATAONOTHERPAGE()
Call editTableData("statement", 20, 6, "Why did this work?")
End Sub
результат:
03/19/2020, WAL-MART SUPERCENTER, 67.07, blank, blank, "Why did this work?"

но при вызове здесь:
Function categorize(criteria As String) As Double
Dim statement As listobject, statementNames As Range, statementCategory As Range, statementCredit As Range, name As Range
Set statement = Sheet1.ListObjects("statement")
Set statementNames = Sheet1.ListObjects("statement").ListColumns("Name").DataBodyRange
Set statementCategory = Sheet1.ListObjects("statement").ListColumns("Category").DataBodyRange
Set statementCredit = Sheet1.ListObjects("statement").ListColumns("Credit").DataBodyRange
'---this is the part that matters:--------------------------------
For Each name In statementNames
If name.value Like criteria + "*" Then
Call editTableData(statement.name, name.row, statementCategory.column, statement.name)
categorize = categorize + statementCredit(name.row, statementCredit.column).value
End If
Next
End Function
он попадает в метод, передает editTableData ("оператор", 20, 6, "оператор") в виде строки , int, int, String соответственно (то есть те же данные), но он просто перестает работать, и я не знаю, почему.
что-нибудь просветляющее было бы хорошо, вот таблица, которую я использую эту таблицу для вызова формулы а также:
изображение таблицы

Обновление / изменение: Вот отладочные фото: ВЫЗОВ МЕТОДА в методе (окно ссылок на значения): в методе
, и когда я снова нажимаю F8, на этот раз происходит сбой ... Нет сообщения об ошибке , ни одна из других ячеек выше или ниже не была изменена, поэтому она просто не работает вообще. если бы это была проблема с индексом, которую было бы достаточно легко исправить