Процедура VBA: заменить заготовки внутри таблицы работ, но почему? - PullRequest
1 голос
/ 09 марта 2020

Я ссылался на этот сайт, чтобы ответить на многие мои вопросы, но на этот вопрос я не смог найти ответ.

Public Sub RemoveBlanks()
Dim Table As ListObject
Set Table = Worksheets("Sheet1").ListObjects("ExampleTable")
Dim r As Range

With Table.DataBodyRange
    For Each r In Table.DataBodyRange
        If r.Value = "" Then r.Value = "-"
    Next r

End With

End Sub

Это код, который я использовал (изменил имена переменных / листов) в общем c для простоты разговора).

Объявлена ​​переменная Dim r As Range Но никогда не устанавливайте ссылку и не определяйте, что такое r. Так как же работает эта часть? Я думал, что для каждой переменной должно быть назначено значение или ссылка для VBA, чтобы знать, что с ней делать.

For Each r In Table.DataBodyRange
        If r.Value = "" Then r.Value = "-"
    Next r 

Я ищу причину.

Это мой первый пост, и я очень хорошо разбираюсь в этом бизнесе по программированию / кодированию - Google был моим другом. Я ищу больше теории вместо старой доброй копии / вставки кода, внесения нескольких изменений имени и скрестив пальцы.

Мои извинения, если форматирование не является идеальным. Я рад уточнить, если то, что я спрашиваю, не имеет смысла.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...