Как увеличить значение ячейки в Excel с помощью VBA? Ошибка: несоответствие типов - PullRequest
0 голосов
/ 29 мая 2010

Я пишу макрос, но поскольку я впервые работаю в vb, у меня возникли проблемы.

Мой код:

Cells (1, 1).Select
Dim tempvar As Integer
tempvar = Val(Selection.Value) // error
Selection.Value = tempvar + 1

Каким должен быть мой код:

Cells(1,1).Value+=1

Я получаю ошибку "несоответствие типов". Как мне это сделать?

РЕДАКТИРОВАТЬ : строка 1, ячейка 1 объединена. Он состоит из 4 столбцов, поэтому это строка 1, ячейка 1,2,3,4 в одном столбце. Если ячейка не объединена, проблем нет.

1 Ответ

1 голос
/ 29 мая 2010

Как насчет этого:

Cells(1,1).Value = Cells(1,1).Value + 1

Выбор ячеек и диапазонов для работы с ними в VBA не требуется (и намного медленнее), вы можете просто обратиться к ним напрямую. Я на самом деле не уверен, что будет делать выше, если Cells (1,1) имеет значение "привет" или не число, но оно будет работать, если оно действительно. Вы можете использовать IsNumeric (), если хотите проверить значение в ячейке, чтобы убедиться.

Дайте мне знать, если это поможет!

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